What conditions would cause that thread to disappear?
William, > I have a service thread which enters a never-exiting service loop via > a while(1). What conditions would cause that thread to disappear? You tell it to. Either return(), pthread_exit(), or pthread_cancel(). That’s the only way out. > It can’t be just returning off the end because of the while(1). Past > experience has indicated to me that if a single thread causes a > exception such as a SEGV that the entire process is killed. Are there > known conditions which cause just the thread to exit without > interfering with the rest of the process? You’re right. SEGV etc. kill the process (unless you replace the signal handler). > I suspect there’s stack corruption in this thread, but I would have > expected such corruption to take the form of a SEGV or something > similar. I’m very surprised that just the thread exited leaving > everything else (seemingly) intact. So… you have a problem. I *expect* that you’ll find the place where the thread’s exiting and it’ll be something you