0
点赞
收藏
分享

微信扫一扫

C\C++ Thread 分析线程detach()


文章作者:里海

简介:

分离线程detach(),下面的例子创建三个线程并分离,主线程等待三个线程5秒时间。

注意主线程结束会调用exit(),此函数将整个进程结束,所有的线程都会退出。

线程分离后不可接合并且可以安全地销毁。

效果:

      

C\C++ Thread 分析线程detach()_c语言

代码:

#include <iostream>  
#include <thread>    
#include <chrono>    

void pause_thread(int n)
{
	std::this_thread::sleep_for(std::chrono::seconds(n));
	std::cout << "暂停 " << n << " 秒结束\n";
}

int main()
{
	std::cout << "生成并分离三个线程...\n";
	std::thread(pause_thread, 1).detach();
	std::thread(pause_thread, 2).detach();
	std::thread(pause_thread, 3).detach();
	std::cout << "完成分离线程.\n\n";


	//给被分离线程5秒时间完成,但线程不一定完成!
	pause_thread(5); //暂停5秒

	return 0;
}

举报

相关推荐

0 条评论