tommieです。度々すみません。

(2013/04/10 18:22), Shigeki Ohtsu wrote:
> 大津です。
>
>>> これ、 sleep(1) を入れないと、イベントループが io poll で call back を処
>>> 理する前に各スレッドが async fd を上書きしちゃうからだと思います。(ちゃ
>>> んと調べてないですが)
>> uv_async_tはスレッド毎に必要なようです。
>> 1つのuv_async_tを重複して使っていたのが原因でした。
>> スレッド毎に用意したら正しく動きました。
> だから最初に書いた通り、
>
>>>> えー、 worker の中から uv_async_send() してるんですかぁ。
>>>> これ async ハンドラが thread safe じゃないような気がしますが、大丈
>>>> 夫なんかなぁ?
> ということなんですよね。

いえ、workerスレッドからuv_async_send()するのは
通常の使用法(とうか、目的そのもの)だと思いますよ。


>> uv_check()を使ったほうがスッキリしてますね。
>> uv_check()は イベント処理毎に設定した関数を呼び出すのですね、なるほど。
>> 全イベント処理毎に呼ばれるのでしょうか?
> 実は、この辺をわかりやすく図にして書いてます。
> (node-v0.9の初期の図なので今は若干変わってます。)
>
> http://html5.ohtsu.org/new_setImmediate_semantics.png
>
> この図、結構評判良くて、 isaacs からも使いたいと頼まれてますが、まだ最新
> 版書いてない状況です。(早くしないと)

勉強会で見せて頂きましたね、今思い出しました。
これTシャツのデザインとしても良いですねー



-- 

--- 
このメールは Google グループのグループ「Node.js 日本ユーザグループ」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、[email protected] にメールを送信します。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。


メールによる返信