[PHP-users 32353] Re: スレッドとstatic変数の関係について

A.HASEGAWA blu-cielo @ nifty.com
2007年 6月 30日 (土) 13:12:11 JST


長谷川です。お世話になっています。

> # 個人的にはJavaの理解度低いですが、
> # Javaっぽくいうと「グローバル変数を抽出するリフレクション」
> # がPHPの$GLOBALSという感じ?
goungounさんの仰る事、納得です。
私自身がJavaの経験がある為、思考が$GLOBALSを排除したがるんです(^^;

static変数と$GLOBALSは手段であって、
どちらを利用して目的を達成するかは、利用者次第ってことですね。


あとは、static変数の内部的な動きが気になります。
Javaのお話になってしまい申し訳ありませんが、
JavaのWebアプリ(Servlet)ではクラスのインスタンス変数さえも
場合によっては競合をおこしてしまい、バグの原因になる事もあります。
(Servletにはいろいろな事情がある為、語弊があるかもしれませんが・・・)

> 正直スレッドとかの考え方は、少なくともPHPでは捨てたほうがいいような。。
kanonbellさんが仰るように、
PHPのWebアプリ上(複数プロセス/マルチスレッド環境)で、
単一のHTTPリクエスト内であれば、安心してstatic変数が利用できるかどうか、
ご教授の程、宜しくお願い致します。



PHP-users メーリングリストの案内