2016-08-26 8 views
0

Pthreads - スレッドから切り離してメインに参加できますか?私が何をしたいか

pthread_create(&producer_thread, &to_join, producer_routine, &queue); 
pthread_detach(producer_thread); 
... 
... 
pthread_join(producer_thread, NULL); 

は、上記のコードを実行するには、何らかの方法でこのことが可能です...の行に何かあり、スレッドに参加することができません。

+2

あなたは[XY問題](http://xyproblem.info)に精通していますか? –

+1

いいえ。スレッドを切り離すと、スレッドは永続的に結合解除されます。ただし、スレッド関数を制御している場合は、特定の分離スレッドを待機する独自のメカニズムをロールバックすることができます。 –

+1

[man page](http://man7.org/linux/man-pages/man3/pthread_detach.3.html)を読むには、いつも良いアイデアがあります: "スレッドが切り離されると、それを結合することはできませんpthread_join(3)で再結合することができます。 – kaylum

答えて

4

離脱すると、もう参加できなくなります。

スレッドが分離されたら、それは pthread_join(3)と結合することができないか、再度合流可能作られる:pthread_detach()のmanページのノートから

関連する問題