読書会(Javaスレッドプログラミング)第7回議事録

[ 戻る ]


「Javaスレッドプログラミングを読む会」第7回

日時: 2001/05/26 10:00 - 16:15
場所: IAJ 会議室
参加者(敬称略): 高橋(徹)、高橋(智)、武川、田中
朗読者: 高橋(智)、高橋(徹)
書記: 武川

3.3.2 競合セット

P230下から2行目 ユニークな記述ってなに?
→各オブジェクトは(一意に)識別できるの間違い?

全部sychronizedにしちゃえばいいんじゃないの?
→性能を上げたいから競合セットを使う。

storeとstoreが競合しないのは何故?
→java.util.Hashtableがsynchronized化されているから

P.233 doStoreをtry{}finally{}で括っている理由は?
→ランタイム例外が起きた場合でも、storingをデクリメントしないといけない。

3.3.3.1  ReaderとWriter

P235 インテンションロックってなに?
→よくわかりませんでした。

P236 5行目 同様な選択がReaderの終了の後に の意味は?
→Readerの実行中に、WriterとReaderの実行要求が来た場合に現在実行中の
 Readerが終了した後に、WriterとReaderのどちらを実行すべきか?という選択

P.238 のRWLockはdoReadとdoWriteを実装していないのでabstractではないか?

P.238 のRWLockのrlockとwlockはどう使っているの?

3.3.3.3 継承異常

他の階層化テクニックで出てくるインターフェースアダプテーションなどに関する問題
を避けることができる?ってどういう意味。そもそもインターフェースアダプテーションってなんだ?
→わかりませんでした。

継承異常とはなにか?
→サブクラスの変更によって親クラスに変更が派生してしまうこと?
→並列処理ではこの問題が起こりやすいということではないか?
  
P244 クリーンアップとは?
→設計しなおしてシステムを整理すること。

3.4.1.4 同期チャネル

P255 下から5行目 リターンを行なわないときに緊急停止するとプロトコルに違反する
ってどういう意味か?
→InterruptedExceptionを受けてputメソッドをreturnしてしまうと、
 "同期チャネル"の同期という部分が達成できなくなってしまう。

SynchronousChannle.takenが何故いるのか?
→同期を実現するため

3.4.1.5 公平さとスケジューリング 

P.257 2行目 他方、リソースプールの管理クラスでは、.... くらいに慎重です
 の文の意味がよくわからない。

3.4.1.6 プライオリティー

プライオリティの逆転とは具体的にどのようなことなのか?
→低いプライオリティのスレッドが持っているロックを
 高いプライオリティのスレッドが必要としている場合、
 低いプライオリティのスレッドがなかなか終わらないので、
 高いプライオリティのスレッドも開始できない。

以上、P258まで終わりました。
次回はP.259 3.4.2 ラッチからです。


[ 戻る ]