[#2023] Class Method の index — (Dezawa Shin-ichiro) <dezawa@...>
出沢です
13 messages
1997/02/02
[#2028] Re: Class Method の index
— matz@... (Yukihiro Matsumoto)
1997/02/04
まつもと ゆきひろです.
[#2031] Re: Class Method の index
— Sinichiro Dezawa <dezawa@...>
1997/02/04
> まつもと ゆきひろです.
[#2046] ruby 1.0-970204 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
10 messages
1997/02/04
[#2050] Re: ruby 1.0-970204 available
— sinara@...
1997/02/04
原です。
[#2068] Re: to compile ruby on MachTen — hi_saito@... (Hirofumi Saito)
斉藤です。
6 messages
1997/02/06
[#2074] Re: to compile ruby on MachTen — hi_saito@... (Hirofumi Saito)
斉藤です。
6 messages
1997/02/06
[#2088] [Request] alarm — sinara@...
例によって原です。
10 messages
1997/02/08
[#2091] Re: Segmentation fault (Re: ruby 1.0-970207 released) — Shin-ichiro Hara <sinara@...>
原です。
8 messages
1997/02/10
[#2093] Re: Segmentation fault (Re: ruby 1.0-970207 released)
— matz@... (Yukihiro Matsumoto)
1997/02/10
まつもと ゆきひろです.
[#2095] Re: Segmentation fault (Re: ruby 1.0-970207 released)
— sinara@...
1997/02/10
原です。
[#2097] Re: Segmentation fault (Re: ruby 1.0-970207 released)
— matz@... (Yukihiro Matsumoto)
1997/02/10
まつもと ゆきひろです.
[#2102] Thread, Exception and Timeout — sinara@...
原です。
13 messages
1997/02/11
[#2103] Re: Thread, Exception and Timeout
— matz@... (Yukihiro Matsumoto)
1997/02/12
まつもと ゆきひろです.
[#2121] bug? array in *array — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
14 messages
1997/02/13
[#2122] Re: bug? array in *array
— matz@... (Yukihiro Matsumoto)
1997/02/13
まつもと ゆきひろです.
[#2123] Re: bug? array in *array
— sinara@...
1997/02/13
原です。
[#2137] [BUG] for line in $< — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
11 messages
1997/02/14
[#2138] Re: [BUG] for line in $<
— matz@... (Yukihiro Matsumoto)
1997/02/14
まつもと ゆきひろです
[#2139] Re: [BUG] for line in $<
—
1997/02/14
けいじゅ@SHLジャパンです.
[#2142] Re: [BUG] for line in $<
— matz@... (Yukihiro Matsumoto)
1997/02/15
まつもと ゆきひろです
[#2143] Re: [BUG] for line in $<
—
1997/02/15
けいじゅ@SHLジャパンです.
[#2155] ruby 1.0-970217 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
3 messages
1997/02/17
[#2158] [Req] pack/unpack — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
14 messages
1997/02/18
[#2166] Re: [Req] pack/unpack
— matz@... (Yukihiro Matsumoto)
1997/02/18
まつもと ゆきひろです.
[#2169] Re: [Req] pack/unpack
—
1997/02/18
けいじゅ@SHLジャパンです.
[#2196] [BUG] pack/unpack [Re: [Req] pack/unpack]
—
1997/02/19
けいじゅ@SHLジャパンです.
[#2206] Re: [BUG] pack/unpack [Re: [Req] pack/unpack]
— matz@... (Yukihiro Matsumoto)
1997/02/19
まつもと ゆきひろです.
[#2211] Re: [BUG] pack/unpack [Re: [Req] pack/unpack]
—
1997/02/19
けいじゅ@SHLジャパンです.
[#2212] Re: [BUG] pack/unpack [Re: [Req] pack/unpack]
— matz@... (Yukihiro Matsumoto)
1997/02/19
まつもと ゆきひろです.
[#2214] Re: [BUG] pack/unpack [Re: [Req] pack/unpack]
—
1997/02/19
けいじゅ@SHLジャパンです.
[#2215] Re: [BUG] pack/unpack [Re: [Req] pack/unpack]
— matz@... (Yukihiro Matsumoto)
1997/02/19
まつもと ゆきひろです.
[#2160] [BUG] gets(nil) — sinara@...
原です。
16 messages
1997/02/18
[#2165] Compilation on NeXT — maeda syuugo <le4441ms@...>
みなさん、はじめまして。
8 messages
1997/02/18
[#2167] [BUG] split(" ", limit) — sinara@...
原です。
12 messages
1997/02/18
[#2171] Re: [BUG] split(" ", limit)
— WATANABE Hirofumi <watanabe@...>
1997/02/18
わたなべです.
[#2190] Re: [BUG] split(" ", limit)
— matz@... (Yukihiro Matsumoto)
1997/02/18
まつもと ゆきひろです
[#2193] Re: [BUG] split(" ", limit)
— WATANABE Hirofumi <watanabe@...>
1997/02/19
わたなべです.
[#2198] Re: [BUG] split(" ", limit)
— matz@... (Yukihiro Matsumoto)
1997/02/19
まつもと ゆきひろです.
[#2222] ruby 1.0-970219 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
7 messages
1997/02/19
[#2230] ruby 1.0-070220 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
7 messages
1997/02/20
[#2237] ruby/tk - how to make menu — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
2 messages
1997/02/21
[#2238] bug? fail — keiju@... (Keiju ISHITSUKA)
けいじゅ@SHLジャパンです.
10 messages
1997/02/22
[#2245] Re: bug? fail
— matz@... (Yukihiro Matsumoto)
1997/02/24
まつもと ゆきひろです
[#2251] Re: bug? fail
—
1997/02/24
けいじゅ@SHLジャパンです.
[#2254] [BUG]rbgw's ENV[]= can't set ENVIRONMENT — sinara@...
原です。
5 messages
1997/02/24
[#2256] ruby on FreeBSD — MAEDA Shugo <ender@...>
こんにちは、前田です。
6 messages
1997/02/24
[#2277] ruby 1.0-970228 available — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです.
16 messages
1997/02/28
[#2278] Re: ruby 1.0-970228 available
— sinara@...
1997/02/28
原です。
[ruby-list:2110] Re: Thread, Exception and Timeout
From:
Date:
1997-02-12 05:26:03 UTC
List:
ruby-list #2110
けいじゅ@SHLジャパンです.
In [ruby-list :02103 ] the message: "[ruby-list:2103] Re: Thread,
Exception and Timeout ", on Feb/12 11:39(JST) matz@caelum.co.jp
(Yukihiro Matsumoto) writes:
>あえて問題といえば,threadに外側から例外を発生させる方法がな
>い(プロセスに対するkill(2)のようなもの)ことですが,これはな
>くても何とかなりそうな気もします.
スレッド間の非同期通信に使えますので, あっても良いんじゃないかしらと思
うのですが??
ここで考えているのは, あるスレッドを指定して例外を発生させる機能です.
>こんな感じでどうですか? threadを2つも使っちゃいますけど.
>
>def timeout(sec, msg = "timeout")
> x = Thread.start { yield }
> y = Thread.start {
> sleep sec
> Thread.kill x if x.status
> }
> Thread.join x
> if y.status
> Thread.kill y
> else
> raise TimeoutError, msg
> end
>end
厳密にいえば, 別スレッドの中で起動しているので,
def foo
begin
timeout(2) do
print "A"
sleep 1
return
print "B"
end
rescue
print "C"
ensure
print "D"
end
print "E"
end
foo
みたいな処理は, イテレータを実行しているのと処理が変わってきますよね.
このばあい:
ADE
本当は:
AD
となって欲しい.
スレッドに対して例外を非同期に送れれば, 以下のようにtimeoutも実現でき
ますし, 純正イテレータとして実行していますので上記のような問題も発生し
ません.
スレッドに対して例外を送るメソッドをThread#raise()としましょう.
def timeout(sec, msg = "timeout")
begin
x = Thread.current
yield
y = Thread.start {
sleep sec
x.raise TimeoutError, msg if x.status
}
ensure
if y.status
Thread.kill y
end
end
end
いかがでしょう??
__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----