[#45311] 開発会議 — SASADA Koichi <ko1@...>
笹田です.
10 messages
2012/03/06
[#45312] Re: 開発会議
— "ayumu.aizawa@..." <ayumu.aizawa@...>
2012/03/06
US=1B$B$K$$$k$N$G!"=1B(BSkype=1B$B$H$+=1B(BFaceTime=1B$B$G;22C$7$?$$$G$9!#=1B=
[#45341] 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...>
ささだです.
28 messages
2012/03/11
[#45816] Re: 非同期割り込みに対する対処案(日本語版)
— SASADA Koichi <ko1@...>
2012/06/25
ささだです.
[#45817] Re: 非同期割り込みに対する対処案(日本語版)
— Tanaka Akira <akr@...>
2012/06/25
2012年6月25日 18:26 SASADA Koichi <ko1@atdot.net>:
[#45819] Re: 非同期割り込みに対する対処案(日本語版)
— SASADA Koichi <ko1@...>
2012/06/25
ささだです.
[#45820] Re: 非同期割り込みに対する対処案(日本語版)
— Tanaka Akira <akr@...>
2012/06/25
2012年6月25日 19:39 SASADA Koichi <ko1@atdot.net>:
[#45827] Re: 非同期割り込みに対する対処案(日本語版)
— SASADA Koichi <ko1@...>
2012/06/25
(2012/06/25 20:32), Tanaka Akira wrote:
[#45835] Re: 非同期割り込みに対する対処案(日本語版)
— KOSAKI Motohiro <kosaki.motohiro@...>
2012/06/25
> の3つになるような気がしていますので,ある例外がこれら 3 つのどの状態に
[#45841] Re: 非同期割り込みに対する対処案(日本語版)
— Tanaka Akira <akr@...>
2012/06/25
2012年6月26日 3:40 SASADA Koichi <ko1@atdot.net>:
[#45844] Re: 非同期割り込みに対する対処案(日本語版)
— SASADA Koichi <ko1@...>
2012/06/25
(2012/06/26 5:07), Tanaka Akira wrote:
[#45871] Re: 非同期割り込みに対する対処案(日本語版)
— Tanaka Akira <akr@...>
2012/06/29
2012年6月26日 5:15 SASADA Koichi <ko1@atdot.net>:
[#45372] Marshal.dumpにおけるインスタンス変数の取り扱いについて — keiju@... (Keiju ISHITSUKA)
けいじゅ@いしつかです.
14 messages
2012/03/16
[#45376] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— Yukihiro Matsumoto <matz@...>
2012/03/17
まつもと ゆきひろです
[#45377] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— keiju@... (石塚圭樹)
2012/03/17
けいじゅ@いしつかです.
[#45381] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— Yukihiro Matsumoto <matz@...>
2012/03/17
まつもと ゆきひろです
[#45399] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— keiju@... (石塚圭樹)
2012/03/18
けいじゅ@いしつかです.
[#45401] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— Tanaka Akira <akr@...>
2012/03/19
2012年3月19日5:54 石塚圭樹 <keiju@ishitsuka.com>:
[#45405] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて
— keiju@... (石塚圭樹)
2012/03/19
けいじゅ@いしつかです.
[#45451] [ruby-trunk - Feature #6218][Open] struct.cのrb_struct_s_members_m()について — "Glass_saga (Masaki Matsushita)" <glass.saga@...>
6 messages
2012/03/28
[ruby-dev:45355] Re: 非同期割り込みに対する対処案(日本語版)
From:
Yusuke Endoh <mame@...>
Date:
2012-03-13 11:48:23 UTC
List:
ruby-dev #45355
遠藤です。 2012-03-13 Urabe Shyouhei <shyouhei@ruby-lang.org>: > On 2012年03月12日 21:00, Yusuke Endoh wrote: >> もっと細かいことを言うと、POSIX thread では mutex のロック待ちは >> ブロックしうるけれど cancellation point になっていません。 >> その理由は、推測ですが >> >> - mutex のロックで割りこまれるようではプログラムを書くのが難しい >> - cancellation point に関係なく、mutex はロック内の処理を一瞬で >> 終了することが求められていて、ロックで「ブロック」するほど待つ >> ケースは想定されていない >> >> などかと思います。 > > POSIXではキャンセルが起こるとただ処理が中断されるのではなくクリーンアップ > ハンドラが動くことがあります。ここで、条件変数を待っているスレッドがキャン > セルされた時にクリーンアップハンドラに突入すると、そのハンドラ内で条件変数 > が待っていたmuetxはロックされた状態で突入してくることになっています。した > がってクリーンアップハンドラは常にmutexをロックしている前提で書いてよいこ > とになっています。ところがmutexのキャンセルがOKということにすると、クリー > ンアップハンドラはmutexがロックされているのか、ロックされていないのかよく > わからないような感じで動くということになります。これは正しく書くのがとても > 面倒です。 > > といったことがpthread_cond_wait(3posix)のRATIONALEに書いてあります。 へー。これは知りませんでした。 POSIX thread を真似するなら気をつけた方がいいですね。 ただ、私が言ったのは「pthread_mutex_lock はブロックしうるけど cancellation point じゃない」という話で、上とは別の話です。 http://pubs.opengroup.org/onlinepubs/007904875/functions/pthread_mutex_lock.html は見たんですが、特に rationale は書いてないようでした。検索してみたら http://www.mkssoftware.com/docs/man3/pthread_cancel.3.asp pthread_mutex_lock() is not a cancellation point, although it may block indefinitely; making pthread_mutex_lock() a cancellation point would make writing correct cancellation handlers difficult, if not impossible. http://sourceware.org/pthreads-win32/manual/pthread_mutex_init.html None of the mutex functions is a cancellation point, not even pthread_mutex_lock, in spite of the fact that it can suspend a thread for arbitrary durations. This way, the status of mutexes at cancellation points is predictable, allowing cancellation handlers to unlock precisely those mutexes that need to be unlocked before the thread stops executing. Consequently, threads using deferred cancellation should never hold a mutex for extended periods of time. など、やはり「プログラムを書くのが難しくなりすぎるから」ということの ようです。 いずれにせよ、かなり余談に近い話です。すみません。 -- Yusuke Endoh <mame@tsg.ne.jp>