首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux C++在程序以一个仍在运行的线程结束后怎么办?

Linux C++在程序以一个仍在运行的线程结束后怎么办?
EN

Stack Overflow用户
提问于 2015-03-30 07:36:43
回答 3查看 156关注 0票数 0

如果您正在用线程开发程序,但是出了问题.,那么当程序结束时,线程怎么办(例如)带一个错误*而不退出线程。需要重新启动吗?或退出线程,如果进程已关闭?不然呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-30 07:40:01

每个线程都由一个进程拥有。当您在应用程序中创建线程时,它们属于应用程序的进程。当应用程序退出时,无论是在正常情况下还是在错误发生之后,进程都会被终止,并且它拥有的每个线程都会被终止。

因此,在多线程应用程序中,每个线程总是在应用程序退出时自动终止。

票数 1
EN

Stack Overflow用户

发布于 2015-03-30 07:41:11

你是误会线。读一些好的POSIX线程教程然后线程(7)。另见高级Linux编程 & 系统(2)

一旦Linux 流程终止,它的所有线程都会消失(请参阅NPTL)。

注意,在Linux上使用当前的C++11库,它们的std::thread-s构建在线程之上。

票数 0
EN

Stack Overflow用户

发布于 2015-03-30 07:42:10

当进程结束时,所有线程也会退出。进程获得的所有资源都将被释放。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29340692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档