[#11131] Re: SIGINT on windows — Daisuke Aoki <dai@...>

青木です。

36 messages 2000/10/04
[#11217] Re: SIGINT on windows — Daisuke Aoki <dai@...> 2000/10/14

青木です。

[#11250] Re: SIGINT on windows — Daisuke Aoki <dai@...> 2000/10/16

青木です。

[#11258] Re: SIGINT on windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/10/17

なかだです。

[#11298] Re: SIGINT on windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/10/27

なかだです。

[#11183] EPOC32 and Ruby 1.7 — WATANABE Hirofumi <eban@...>

わたなべです.

44 messages 2000/10/12
[#11188] Re: EPOC32 and Ruby 1.7 — matz@... (Yukihiro Matsumoto) 2000/10/12

まつもと ゆきひろです

[#11191] ruby-bugs-ja PR#20 — Kazuhiro NISHIYAMA <zn@...> 2000/10/12

On Fri, 13 Oct 2000 00:17:14 +0900

[#11205] Re: ruby-bugs-ja PR#20 — Kazuhiro NISHIYAMA <zn@...> 2000/10/13

同じ問題を短いスクリプトで再現できました。

[#11210] Re: Thread.new with irb (PR#20) — matz@... (Yukihiro Matsumoto) 2000/10/13

まつもと ゆきひろです

[#11211] Re: Thread.new with irb (PR#20) — Kazuhiro NISHIYAMA <zn@...> 2000/10/13

On Sat, 14 Oct 2000 03:41:18 +0900

[#11221] Re: Thread.new with irb (PR#20) — Kazuhiro NISHIYAMA <zn@...> 2000/10/14

[ruby-dev:11205]と同じスクリプトで-dをつけていると

[#11306] Ruby I18N — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

130 messages 2000/10/28
[#11307] Re: Ruby I18N — " たけ (tk)" <ggb03124@...> 2000/10/28

たけ(tk)です。

[#11310] Re: Ruby I18N — kenn@... 2000/10/29

長沢です。

[#11314] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/10/29

まつもと ゆきひろです

[#11315] Re: Ruby I18N — Shugo Maeda <shugo@...> 2000/10/30

前田です。

[#11324] Re: Ruby I18N — TAKAHASHI Masayoshi <maki@...> 2000/10/30

高橋征義です。

[#11337] Re: Ruby I18N — Yasushi Shoji <yashi@...> 2000/10/30

At Mon, 30 Oct 2000 13:15:23 +0900,

[#11346] Re: Ruby I18N — TAKAHASHI Masayoshi <maki@...> 2000/10/31

某2ちゃんねるで自分の名前を見つけてびびった高橋征義です。

[#11347] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/10/31

まつもと ゆきひろです

[#11370] Re: Ruby I18N — TAKAHASHI Masayoshi <maki@...> 2000/11/02

高橋征義です。

[#11372] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/02

まつもと ゆきひろです

[#11375] Re: Ruby I18N — TAKAHASHI Masayoshi <maki@...> 2000/11/04

高橋征義です。

[#11378] Re: Ruby I18N — " たけ (tk)" <ggb03124@...> 2000/11/05

たけ(tk)です。

[#11379] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/05

まつもと ゆきひろです

[#11380] Re: Ruby I18N — " たけ (tk)" <ggb03124@...> 2000/11/05

たけ(tk)です。

[#11382] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/05

まつもと ゆきひろです

[#11393] Re: Ruby I18N — "たけ(tk)" <ggb03124@...> 2000/11/07

たけ(tk)です。 ・・ 長文ご注意。

[#11396] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/07

まつもと ゆきひろです

[#11397] Re: Ruby I18N — Yasushi Shoji <yashi@...> 2000/11/07

At Tue, 7 Nov 2000 15:46:29 +0900,

[#11398] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/07

まつもと ゆきひろです

[#11399] Re: Ruby I18N — Tanaka Akira <akr@...17n.org> 2000/11/07

In article <E13t3dt-0002Fp-00@ev.netlab.zetabits.co.jp>,

[#11401] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/07

まつもと ゆきひろです

[#11404] Re: Ruby I18N — "たけ(tk)" <ggb03124@...> 2000/11/07

たけ(tk)です。

[#11406] Re: Ruby I18N — Yasushi Shoji <yashi@...> 2000/11/07

At Tue, 7 Nov 2000 19:06:27 +0900,

[#11407] Re: Ruby I18N — "たけ(tk)" <ggb03124@...> 2000/11/07

たけ(tk)です。

[#11409] Re: Ruby I18N — Minero Aoki <aamine@...> 2000/11/07

あおきです。

[#11423] Re: Ruby I18N — Tanaka Akira <akr@...17n.org> 2000/11/08

In article <E13t4Hq-0002GS-00@ev.netlab.zetabits.co.jp>,

[#11426] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/08

まつもと ゆきひろです

[#11427] Re: Ruby I18N — Tanaka Akira <akr@...17n.org> 2000/11/08

In article <E13tMYW-0002te-00@ev.netlab.zetabits.co.jp>,

[#11428] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/08

まつもと ゆきひろです

[#11430] Re: Ruby I18N — "たけ(tk)" <ggb03124@...> 2000/11/08

たけ(tk)です。

[#11433] Re: Ruby I18N — matz@... (Yukihiro Matsumoto) 2000/11/08

まつもと ゆきひろです

[#11446] 『文字列は文字の配列か』 — " たけ (tk)" <ggb03124@...> 2000/11/08

たけ(tk)です。

[#11470] Proposal of "Array of CharCode" — " たけ (tk)" <ggb03124@...> 2000/11/10

たけ(tk)です。

[#11471] Re: Proposal of "Array of CharCode" — matz@... (Yukihiro Matsumoto) 2000/11/10

まつもと ゆきひろです

[#11450] Re: Ruby I18N — Tanaka Akira <akr@...17n.org> 2000/11/09

In article <E13tNkT-00030l-00@ev.netlab.zetabits.co.jp>,

[ruby-dev:11126] Re: SIGINT on windows

From: nobu.nakada@...
Date: 2000-10-03 22:58:33 UTC
List: ruby-dev #11126
なかだです。

At Wed, 4 Oct 2000 00:13:54 +0900,
Daisuke Aoki <dai@sweetparty.ne.jp> wrote:
> >   となると、やっぱり signal thread で完了を待ってコンテキストを
> > 戻してやらないとダメですか? でも SuspendThred() されるまでどう
> > やって待とう。
> 
> 安直な方法だと、
>  SuspendThread(hThread); result = ResumeThread(hThread);
> とやって、result が 2 以上であればサスペンドしているとわかります
> ので、あとはループで検知すれば・・・

  main の方も suspend されるまで待ってないといけないじゃないで
すか。システムコールに割り込めないとすると busy wait しかないの
かと思ったんですが。SuspendThread() じゃなきゃいいんでしょうか。

> > > もちろん、sighandle() は呼ばれてます。
> >   win32_main_context() に DebugBreak() を仕込んでみても引っかか
> > らなかったんですが。
> 
> うちでは、printf() 使ってデバッグしてますが、それでちゃんと
> sighandle() 2回呼ばれていることを確認してます。

  [ruby-dev:11111]のようにして試したところ、printf() すると
trap してました。なんか Sleep() するまで signal thread の方が動
いてないような感じでした。しかし優先度最高じゃないのか?

> 以下、Windows 95 上での 1.6.1 の動作での詳細。
> 
> 1)ReadFile() で待機。
> 2)Ctrl-C で sighandle() が呼ばれる。
> 3)win32_main_context() が呼ばれる。
> 4)win32_main_context() の SuspendThread() でメインスレッドが
>  止まる。
> 5)win32_main_context() の SetThreadContext()でメインスレッドが
>  動き出す。4) の SuspendThread() が無効になっている。カーネル
>  モードにでもなっているのでは。ちなみに、SetThreadContext()
>  した以降 SuspendThread() するコード加えても、エラーにはならないが
>  止まらないので、ユーザーモードでないことしか考えられない。

  NT とはこのへんで違いますね。SetThreadContext() しても
suspend 状態のままです。やはりシステムコール中に割り込むのは無
理があるような。ていうか、なんで一回目は SuspendThread() とか
SetThreadContext() できるんでしょう。

> win32_call_handler() ではなくて、win32_main_context() で
> SetThreadContext() をしてみた場合は、ReadFile() 待機中でも
> なんとか大丈夫にできましたが、ReadFile() 待機中じゃない場合の
> Ctrl-C で、タイミング的に例外とか出たりしました。たぶん、私の
> ミスが原因と思いますが不明です(^^: 以下、それに使った実験用
> パッチ(1.6.1 からの差分)です。SuspendThread()で止めてないのは
> 上記の理由によります。

  これは[ruby-dev:10794]と似てますが、

>       handler(arg);
> ! 	ResetEvent(hEvent_win32_call_hander2);
> ! 	SetEvent(hEvent_win32_call_hander1);
> ! 	WaitForSingleObject(hEvent_win32_call_hander2,INFINITE);

  ここが気になったんですが、WaitForSingleObject()は割り込んでも
大丈夫なんでしょうか。


> Sleep(0) は他のスレッドに動作を譲る働きをしますが、Sleep() 自体が

  これって明文化された仕様なんですか。

> # 私としてはかなりうんざりしてて、SIGINT 関連にもう手を出すのは
> # 止めようと思ってます(^^;;

  うーん、できれば…。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread

Prev Next