From: Tanaka Akira Date: 2009-04-01T18:37:20+09:00 Subject: [ruby-dev:38235] Re: *BSD で fork できない理由 In article <49D308AD.4040303@ruby-lang.org>, Urabe Shyouhei writes: > ちょっとこの「Pthreadの仕様的にも動作保障外」って部分の根拠がどうがんばっても自 > 力で発見できないので、よろしければ何かポインタを示していただけませんか? fork の項にある Consequently, to avoid errors, the child process may only execute async-signal-safe operations until such time as one of the exec functions is called. http://www.opengroup.org/onlinepubs/009695399/functions/fork.html というところなんじゃないかと思います。 async-signal-safe function のリストは http://www.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_04.html に載っていて、pthread_create は入っていません。 なので、規格としては、fork でできた子プロセスでは exec する まで pthread_create を使ってはいけません。 -- [田中 哲][たなか あきら][Tanaka Akira]