iモード携帯電話用Java(iアプリ) Part15 at TECH
[2ch|▼Menu]
234:デフォルトの名無しさん
07/09/27 03:13:02
>>216-218
何か話が噛み合ってない気が…
以下2メソッドは同意。

public synchronized void processEvent(){
//...
}
public void processEvent() {
synchronized(this) {
//...
}
}

synchronizedを指定したオブジェクトに対して、別スレッドから参照が行われた場合、
synchronized対象のロックが切れるまで、別スレッドは待ち状態になる。

2つのスレッドからprocessEventが呼び出されたとして、
先に呼び出されたほうがthisをロックする。
後から呼ばれたほうはthisのロックが解除されるまで待ち。

thisのロックが解除されるのはsynchronizedスコープの後なので、
その間呼び出されるメソッドもロック中と同等の動作になる。

>processEvent()から呼んでるメンバは全てsynchronizedである必要がある
これはちとオーバーじゃないかね(´・ω・`)



次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4865日前に更新/253 KB
担当:undef