大津です。

> ご意見募集です。

まだ worker 内の sleep(1) に依存した実装になってますよね。
(sleep(1) を外すと uv_async_send() が正常に動作しなくなる)

これ、 sleep(1) を入れないと、イベントループが io poll で call back を処
理する前に各スレッドが async fd を上書きしちゃうからだと思います。(ちゃ
んと調べてないですが)

先に述べたよう uv_check() を使った実装だとこんな感じになります。
(これは worker 内に sleep(1) は必要ないです)

https://gist.github.com/shigeki/5351299

あと pthread_self() の替りに uv_thread_self() も使えるのでこっちを使って
ます。

まぁ、こんなことのオンパレードになるし、あのころは libuv の pthread 対応
も実装されてないので、 Node の Isolate 対応が複雑で取り止めになったとい
うことはホント理解できますな。

-- 

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


メールによる返信