吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1269|回复: 3
收起左侧

[讨论] 学习C++的第十九天 线程1

[复制链接]
博弟弟丶 发表于 2021-4-26 20:30
本帖最后由 博弟弟丶 于 2021-4-26 20:36 编辑

[C++] 纯文本查看 复制代码
#include <iostream>
#include <thread>//线程头文件 
#include <windows.h>
                     
void xc1() {
	std::cout << "By吾爱破解论坛" <<std::this_thread::get_id() <<std::endl;//获取子线程ID
};

int main() {
	
	
	std::thread t1(xc1);//创建一个新的子线程 调用xc1  这个函数 

	t1.join();//使用join函数后,原始线程会等待新线程执行结束之后,再去销毁线程对象。
	//在一个线程中,开了另一个线程去干另一件事。
	

	std::cout << "By吾爱破解论坛一" << std::this_thread::get_id()<<std::endl;//获取主线程ID
	return 0;
};


#include <iostream>
#include <thread>//线程头文件 
#include <windows.h>
                     
void xc1() {
	for (int i=0;i<100;i++)
	{
		std::cout << "I=" << i<<std::endl;
	}
};

int main() {
	
	
	std::thread t1(xc1);//创建一个新的子线程 调用xc1  这个函数 

	Sleep(100);//加个延时就能看到 for循环里面的内容  如果不加 那么主线程就会直接结束  那么肯定也不会执行输出I的值
	t1.detach();
	//使用detach函数后,那么新线程就会与原线程分离。
	//由于使用的是detch函数,在detch函数执行完成,主线程main函数结束  并没有打印I的值
	//加个延时就能看到 for循环里面的内容  如果不加 那么主线程就会直接结束  那么肯定也不会执行输出I的值
	//一个子线程只能调用join()和detach()中的一个,且只允许调用一次。
	//这个jion  detach  分情况调用

	std::cout << "By吾爱破解论坛一" << std::this_thread::get_id()<<std::endl;
	return 0;
};

免费评分

参与人数 1吾爱币 +2 热心值 +1 收起 理由
苏紫方璇 + 2 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

朱朱你堕落了 发表于 2021-4-26 22:37
这是c++哪个版本的?创建线程不是createthread吗?第一次见std空间里的thread,之前学c ++时没见过这么创建的啊!c++哪个版本有这个功能?孤陋寡闻了。
9007 发表于 2021-4-26 22:41
 楼主| 博弟弟丶 发表于 2021-4-27 16:06
朱朱你堕落了 发表于 2021-4-26 22:37
这是c++哪个版本的?创建线程不是createthread吗?第一次见std空间里的thread,之前学c ++时没见过这么创建 ...

createthread  是API版本   这个是类的版本  
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止回复与主题无关非技术内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-16 21:24

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表