首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在C++11中分离线程

在C++11中分离线程
EN

Stack Overflow用户
提问于 2017-09-07 09:16:58
回答 1查看 36关注 0票数 0

我希望从进程中启动一个线程,并将其分离并终止进程。但是线程将在后台持续运行。我能用c++11实现这一点吗?

我分离了我的线程,就像这样:线程(&thread_func,param1,param2).detach();

但是一旦进程被终止,它就会被终止。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-07 09:26:42

分离并不等同于在后台运行。如果您分离了一个线程,那么您只需告诉操作系统“我不想在线程退出后手动加入它,请帮我处理一下”。但是,当主进程退出时,操作系统通常会杀死所有子线程/进程。

所以你想要的是做个导演。但是,将进程转换为deamon (请注意,不能将线程去守护)是依赖于操作系统的。在linux上,您可以调用daemon函数:

http://man7.org/linux/man-pages/man3/daemon.3.html

我不知道如何在Windows或其他操作系统上这样做。此外,您可能希望阅读以下内容:

Creating a daemon in Linux

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

https://stackoverflow.com/questions/46092502

复制
相关文章

相似问题

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