From: Tietew Date: 2003-11-12T11:20:18+09:00 Subject: [ruby-dev:21903] Re: pthread trouble on tcltklib On Wed, 12 Nov 2003 11:05:28 +0900 In article <20031112.110527.74725916.nagai@ai.kyutech.ac.jp> [[ruby-dev:21901] Re: pthread trouble on tcltklib] Hidetoshi NAGAI wrote: > > この部分ですが、rb_thread_schedule()への再入だけではなく、別の > > pthread内でのrubyスレッドの切替え自体が危険じゃないでしょうか。 > > そう考えると、ロックじゃなくて最初にスレッドIDを保存しておいて、 > > 単純に現在のスレッドと一致しなかったら戻る、だけでもよさそうな > > 気がして来ました。 > > ruby thread の切り替え作業が同時に行われなければいいのではないかと > 思いましたが,甘かったでしょうか.(^_^; 甘いと思います。特に GC がスタックを参照するので,範囲外をスキャ ンしてお亡くなりになるとか,いろいろ考えられます。JUMP_TAG も危 ないですね。あらぬ所へ飛んでいくかも。 > ruby thread の切り替えが可能な pthread を一つだけに絞ったとき, > アプリケーションへの組み込み用途での ruby 利用に支障が出たりは > しないでしょうか? Windows の例ですが,Ruby が走るネイティブスレッドを一つ決め,そ の上で Ruby を走らせています。そのスレッド以外で Ruby に制御は絶 対に渡しません。解決不可能な問題の原因になるので。 —[ Tietew ]—————————————————————————— メ : tietew@tietew.net / tietew@raug.net / tietew@masuclub.net ホペ: http://www.tietew.net/ Tietew Windows Lab. http://www.masuclub.net/ 鱒倶楽部 指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA