1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
#include <pthread.h> #include <signal.h> // Raise from different thread. void foo() { raise(SIGSEGV); } void bar() { foo(); } void qux() { bar(); } void* thread(void*) { qux(); return 0; } int main() { pthread_t th; pthread_create(&th, NULL, thread, NULL); pthread_join(th, NULL); }