多线程的exit()逻辑
来源:互联网 发布:阿里数据库oceanbase 编辑:程序博客网 时间:2024/05/16 07:00
今天很巧再一次调试了多线程的代码。主要思想就是:通过pthread_create创建一个线程,然后通过主线程A控制创建出来的线程B,完成各种功能。
video_thread()
{
while()
{
display();
}
exit(0);
}
main()
{
pthread_create(&video,,video_thread,);
while(quit)
{
pthread_join(video,NULL);
quit = 0;//退出主线程
}
printf("terminate all process \n")
}
然后发现当video_thread退出的时候,主线程的printf没有打印出terminate all process。有点懵了......后来。这是为什么呢,几经周折在网上终于查到了exit函数。原来在调用exit函数后创建的video线程退出了,这个exit退出的太干净,什么都没有留下。所以pthread_join一直在等待中,等待线程退出的消息。
随后把exit换成printf(“closed video\n”)终于得到了想好的答案。
记录一下,以便后忘。
0 0
- 多线程的exit()逻辑
- 多线程加速下载的逻辑实现
- 多线程编程---条件变量的逻辑分析
- 多线程处理耗时的业务逻辑
- exit(0)和exit(1)的区别
- exit(0)与exit(1)、return的区别
- System.exit(1)和System.exit(0)的区别
- 逻辑服务器多线程设计
- PLSQL 逻辑多线程机制
- 关于网游服务器逻辑多线程处理的一些经验
- exit()与_exit()的区别
- return() 与exit() 的区别
- exit()和return的区别
- C语言的exit()函数
- exit()和_exit()的区别
- exit(0),exit(1),exit(-1)的区别?
- exit(0),exit(1),exit(-1)的区别
- python多线程调用exit无法退出
- golang中对map操作类
- 关乎DevOps成败的三个火枪手
- 405. Convert a Number to Hexadecimal
- Leetcode 42. Trapping Rain Water (Hard) (cpp)
- 树莓派raspberry pi B+的使用
- 多线程的exit()逻辑
- C# dataGrideView
- extrude and preserve uv tool
- c++ static
- SqlServor 内存使用率高
- Leetcode 287. Find the Duplicate Number (Hard) (cpp)
- SDP数据元分析
- MS CRM merge功能和POA Table(1)
- Linux新内核:提升系统性能