一、线程的创建
1.创建分离线程
方法一:(常用)
pthread_t tid;
pthread_create(&tid, NULL, my_thread, NULL);
pthread_detach(tid);
方法二:
pthread_t tid
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create( &tid, &attr, my_thread, NULL);
2.创建非分离线程
pthread_t tid;
pthread_create( &tid, NULL, my_thread, NULL);
二、线程的使用
void *my_thread(void *ptr)
{
// thread code
}
三、分离线程与非分离线程的区别
分离线程会在线程运行结束后会自动释放所有资源,
非分离线程需要调用pthread_join(tid, NULL);来释放资源。
网友评论