Below is my code snippet. int main ( ) { some instructions; while ( 1 ) { /* Block 1 : Starts*/ if ( selection == 1 ) { ret = pthread_create ( &tid, NULL, &select_n_process_req, NULL ); if ( ret != 0 ) { printf ("Error Creating Thread"); } } /* Block 1 : Ends*/ /* Block 2 : Starts*/ printf ("Sleeping for [%d]", retry_time * 60 * 60); for ( i = 0; i < retry_time * 60 * 60; i++ ) { if ( stop_flag == 1 ) { printf ("Process Stopped\n"); break; } sleep ( 1 ); } /* Block 2 : ENDS*/ } some instructions; return SUCCESS; } int select_n_process_req ( void ) { some instructions; return SUCCESS; }
守则解释:
题:
谢谢。
您必须调用pthread_join (来自父线程)或pthread_detach ,或者通过将附加属性传递给pthread_create来创建处于分离状态的线程。 看到这里: http : //man7.org/linux/man-pages/man3/pthread_create.3.html