I create more than 100 threads from my main() so I just wanted to know that do I need to call pthread_join() before I exit my main().
Also, I do not need the data generated by these threads, basically, all the threads are doing some job independent from main() and other threads.
I create more than 100 threads from my main() so I just wanted to
Share
pthread_joindoes two things:If you exit the process without joining, then (2) will be done for you by the OS (although it won’t do thread cancellation cleanup, just nuke the thread from orbit), and (1) will not. So whether you need to call
pthread_joindepends whether you need (1) to happen.If you don’t need the thread to run, then as everyone else is saying you may as well detach it. A detached thread cannot be joined (so you can’t wait on its completion), but its resources are freed automatically if it does complete.