Subscribe to
Posts
Comments

By default, POSIX threads are created non-detached. You need to perform a join on each non-detached thread, or else storage will never be freed up when they exit. As an alternative, you can create detached threads, for which storage will be freed as soon as they exit. This latter approach is generally better; you should only create non-detached threads if you explicitly need to know when or if they exit.

One Response to “After I create a certain number of threads, my program crashes [Unix]”

  1. on 08 Aug 2007 at 11:44William Rogers

    After my program runs for 1-3 hours, all the threads terminate but I cannot know exactly what caused this. Is there a way to determine which thread terminates first?

Leave a Reply