Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

When is it safe to call pthread_attr_destroy?

I am using pthreads on Linux. From the documentation, it is not clear to me when it is safe to call pthread_attr_destroy on the attributes I use to create a new thread? Can I do it immediately after pthread_create returns or do I have to wait until the thread is joined or detached?

Thanks in advance, Christoph

like image 308
Christoph Avatar asked Feb 05 '13 14:02

Christoph


1 Answers

The thread attribute is copied in pthread_create, so it should be destroyed after pthread_create call.

Requires reading between lines here http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_create.html:

If the attributes specified by attr are modified later, the thread's attributes shall not be affected.

like image 76
Maxim Egorushkin Avatar answered Oct 09 '22 03:10

Maxim Egorushkin