[#17017] 標準添付案 — Kazuhiro NISHIYAMA <zn@...>

西山和広です。

21 messages 2002/05/08
[#17019] Re: 標準添付案 — "Akinori MUSHA" <knu@...> 2002/05/08

At Wed, 8 May 2002 19:50:17 +0900,

[#17021] Re: 標準添付案 — GOTO Kentaro <gotoken@...> 2002/05/08

At Wed, 8 May 2002 22:45:06 +0900,

[#17031] double acosh — WATANABE Hirofumi <eban@...>

わたなべです。

25 messages 2002/05/10
[#17032] Re: double acosh — nobu.nakada@... 2002/05/10

なかだです。

[#17033] Re: double acosh — WATANABE Hirofumi <eban@...> 2002/05/10

わたなべです。

[#17036] Re: double acosh — matz@... (Yukihiro Matsumoto) 2002/05/10

まつもと ゆきひろです

[#17039] Re: double acosh — WATANABE Hirofumi <eban@...> 2002/05/10

わたなべです。

[#17134] argv[0] — Tanaka Akira <akr@...17n.org>

ふと ruby インタプリタの C における argv[0] を知りたくなったんですが、

23 messages 2002/05/18
[#17139] Re: argv[0] — matz@... (Yukihiro Matsumoto) 2002/05/18

まつもと ゆきひろです

[#17144] Re: msvcrt — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

18 messages 2002/05/19

[#17179] コマンドラインオプションの順序制約 — Kazuhiro NISHIYAMA <zn@...>

西山和広です。

13 messages 2002/05/22
[#17181] Re: コマンドラインオプションの順序制約 — matz@... (Yukihiro Matsumoto) 2002/05/22

まつもと ゆきひろです

[#17228] Re: [ruby-list:35305] Re: ((1.2)..(3.4)).to_a — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

28 messages 2002/05/30

[ruby-dev:17136] Re: Thread: deadlock trouble

From: nagai@...
Date: 2002-05-18 09:02:39 UTC
List: ruby-dev #17136
永井@知能.九工大です.

From: Takaaki Tateishi <ttate@kt.jaist.ac.jp>
Subject: [ruby-dev:17130] Re: Thread: deadlock trouble
Date: Fri, 17 May 2002 23:55:12 +0900
Message-ID: <200205171455.g4HEt33i009934@smtp16.dti.ne.jp>
ttate> 単純な方法ですが,以下に類似した方法で解決できるでしょうか?

ありがとうございます.
ですが,状況はもうちょっとやっかいなんです.
前のメールでも書きましたが,特に困っているのは

> ・リソースデータベースのサポートで,Thread を使って
>   外部定義手続きを特定のセーフレベルで実行したいけれど,
>   そうした手続きから他の widget をいじろうとすると deadlock で落ちる.

という辺りです.
ですので,生成した Thread の戻値が欲しいのですが,
いただいた案ですと,以下の部分で

ttate> TkButton.new(nil, 'text'=>'Thread{b1.invoke}', 
ttate>                   'command'=>proc{TkThread.new{b1.invoke}}).pack
ttate> TkButton.new(nil, 'text'=>'Thread{b2.invoke}', 
ttate>                   'command'=>proc{TkThread.new{b2.invoke}}).pack

TkThread.new{...} の部分を TkThread.new{...}.value とすると
みごとに固まってしまいます.

# まだ十分な検討はしていませんので,もしかすると,
# ちょっと手を入れるだけでいいのかもしれません.
# そうであればごめんなさい.

また,

> ・Tcl_DoOneEvent を使った Tk.mainloop の代換品を検討していて
>   Thread{loop{TclTkLib.do_one_event(EventFlag::ALL | EventFlag::DONT_WAIT)}}
>   などとしてテストしてみたら,deadlock で落ちた.

についても考えると,速度面にクリティカルに響いてくる部分ですので,
できることなら C レベルでの解決策も欲しいところです.

まぁ,後者については緊急性は低いので,
とりあえずは前者だけでもどうにかできればいいのですが...
-- 
                                         永井 秀利 (九工大 知能情報)
                                             nagai@ai.kyutech.ac.jp

In This Thread