- 论坛徽章:
- 0
|
pthread_t tmp_thr;
pthread_attr_t tmp_attr;
struct sched_param tmp_sch;
pthread_attr_init ( &tmp_attr );
pthread_attr_setdetachstate ( &tmp_attr, PTHREAD_CREATE_DETACHED );
pthread_create ( &tmp_thr, &tmp_attr, &ProcessThread, pa );
tmp_sch.sched_priority = 1;
pthread_setschedparam ( tmp_thr, SCHED_FIFO, &tmp_sch );
pthread_attr_destroy ( &tmp_attr );
//pthread_detach ( tmp_thr ); |
我在守护程序中大量创建线程时发现 pthread_create 会卡住, 这个情况在30个客户端请求的时候就可以重现.在改成以上的代码后,线程不会再卡住.这里用到的一些东西以前没接触过,APUE里也没讲怎么让线程创建后立即执行. 有什么不正确的请指点一下... 
[ 本帖最后由 我learnc 于 2009-4-8 10:45 编辑 ] |
|