MyException - 我的异常网
当前位置:我的异常网» Linux/Unix » 请问有关线程返回值的有关问题

请问有关线程返回值的有关问题

www.MyException.Cn  网友分享于:2013-02-25  浏览:24次
请教有关线程返回值的问题
我的程序有两个线程,主线程和子线程,我想要获得子线程的返回值,还要让主线程与子线程并发执行,该如何办?另外,pthread_join是不是要阻塞调用线程,直到被调线程返回,如果是这样得话,并发就没多大意义了,是吗?谢谢

------解决方案--------------------
"还要让主线程与子线程并发执行 "
多任务系统中不能做到完全并发,如果有特殊要求,可以用信号量或全局变量进行同步。

如果一定要绝对并发请参考kernel关于进程代码,SMP结构里在不同的cpu执行队列中可以做到,我不知道API,呵呵
注意:linux线程其本质就是进程,线程只是共享了父进程的一些资源的进程
------解决方案--------------------
如果主线程不等待子线程退出,那么只能在子线程退出的时候告诉主线程自己退出了,
这个可以有多种方法实现,信号灯,管道,临时文件,共享内存等等。
进程间通信的方法在线程里也是可以用的。
------解决方案--------------------
"我的程序有两个线程,主线程和子线程,我想要获得子线程的返回值,还要让主线程与子线程并发执行,该如何办? "
要获得子线程的返回值,只要在该线程中调用pthread_exit(),该线程的返回值可以会放在pthread_join(tid,pthread_return)中,pthread_return就是该线程的返回值.
------解决方案--------------------
可以使用pthread_join.
当你在主线程调用了pthread_create后, 主线程和子线程就已经在并发执行了。 当主线程处理完自己的逻辑后,可以调用pthread_join获得子线程的返回值。

虽然pthread_join会阻塞被调用的线程, 但此时如果主线程已经处理完了需要并发的操作,也没有影响并发。

文章评论

5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
我是如何打败拖延症的
我是如何打败拖延症的
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
漫画:程序员的工作
漫画:程序员的工作
一个程序员的时间管理
一个程序员的时间管理
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
程序员应该关注的一些事儿
程序员应该关注的一些事儿
每天工作4小时的程序员
每天工作4小时的程序员
10个调试和排错的小建议
10个调试和排错的小建议
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
旅行,写作,编程
旅行,写作,编程
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
老程序员的下场
老程序员的下场
总结2014中国互联网十大段子
总结2014中国互联网十大段子
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
为什么程序员都是夜猫子
为什么程序员都是夜猫子
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
Java程序员必看电影
Java程序员必看电影
程序员都该阅读的书
程序员都该阅读的书
程序员的鄙视链
程序员的鄙视链
鲜为人知的编程真相
鲜为人知的编程真相
 程序员的样子
程序员的样子
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
代码女神横空出世
代码女神横空出世
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
我的丈夫是个程序员
我的丈夫是个程序员
如何成为一名黑客
如何成为一名黑客
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
那些争议最大的编程观点
那些争议最大的编程观点
程序员和编码员之间的区别
程序员和编码员之间的区别
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有