问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vc++ 控制台多线程编写的问题,跪求高人解答!

发布网友 发布时间:2022-04-24 17:02

我来回答

2个回答

热心网友 时间:2023-10-24 14:00

你搞错 C++程序的线程思想!main和WinMain函数为入口函数,本身已为主线程,主线程标识应用程序生存期。把主函数从线程回调函数中移出来,你这样哪是线程同步啊?直接在主函数中CreateThread传递线程回调地址即可。 再说你有同步吗?一个全局变量竟然被主线程和其它线程同时访问!请使用InterlockedIncrement,数值同步可以使用interlock系统用户态同步函数;也可以使用CreateEvent,CreateMutex,CreateSamphore等内核事件同步;也可以使用EnterCriticalSection对临界区进行同步。推荐使用Mutex同步,Mutex内核对象是线程占有方式,一个线程占有另一个请求的线程将被阻塞。

用法:
HANDLE hMutex = CreateMutex(NULL, FALSE, NULL); //请求内核对象

WaitForSingleObject(hMutex, INIFINTE); //请求进入

ReleaseMutex(hMutex); //释放占用权

CloseHandle(hMutex); //关闭内核对象

热心网友 时间:2023-10-24 14:01

没有同步的原因追问只是cout 没有涉及变量的赋值,不应该需要数据同步呀!

追答cout 是面向流的,那么在COUT输出时就有一个位置的问题。同步吧,没别的法

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
1加到100的和刚好不超过某个值用c语言 C语言求1加至100的和 孤星指的是哪个星星 云南省专升本什么时候考 云南专升本考试时间2023具体时间 云南2024年统招专升本报名时间 2024年云南专升本考试时间已公布:4月20—21日 2024云南专升本考试什么时候考 上海黄金烤瓷牙一颗多少钱? 做一颗黄金的烤瓷牙,正规的医院需要多少钱? VC++多线程 VC编程中多线程同时写的问题 VC多线程操作 VC编程多线程问题 VC多线程 VC++ 最简单的多线程 作文大全里的我不明白吗.. VC++6.0编译器中怎么设置编译选项为多线程 谁给我写个vc++编写多线程的代码随便什么都行简单点最好 台式机插上音箱有类似耳鸣的声音,插上耳机后有电流声,这是不是和主机没接地线有关?我用耳机试了一下, 什么桌面音箱最好 有什么车不贵!改装又好看?又像跑车? 求手机那些隐藏的秘密 为什么耳机插进去会弹出来【急】 千元2.0桌面音箱需要配什么样的声卡? 用了好久的耳机坏了一只,一高声就炸。要换了,不知那个牌子好? 买头戴式耳机 如何判断耳机的好坏 请问世界上最贵的耳机是什么牌子? 有人知道MARLEY的耳机怎么样吗 VC++ 多线程 关于VC++多线程 VC多线程是什么意思? VC 创建多线程的问题 VC多线程程序 怎么在vc中实现多线程 vc++ 多线程编程 SOCKET通信 VC 在线程中如何编写线程子函数 vc 多线程,简单的无限循环怎么编程 VC++ socket多线程编程问题 CAD二维转三维的快捷键是啥呢? cad二维转三维的快捷命令是什么? 能不能把CAD中的平面图转成三维图? CAD2007里面画好的二维图怎么转成三维图 如何在苹果手机上查找丢失的苹果手机 丢失的苹果怎么查找 湖南现在个体户经营所得税起征点是多少? 个体户起征点是多少 个体户税收起征点是多少? 个体工商户起征点