#include #include #include void *func(void *arg) { printf("thread_printf\n"); return NULL; } int main(int argc, char **argv) { pthread_t thread; pthread_create(&thread, NULL, func, NULL); pthread_join(thread, NULL); printf("main_printf1\n"); /* This line never gets printed */ printf("main_printf2\n"); return 0; }