结果通过全局变量保存,这样在多线程环境下存在临界问题? 谁能给我解释一下这句话,对多线程不太了解 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 int a;UINT func(LPARAM param){a=1;a--;}上面是线程函数,如果开启了两个线程如下:AfxBeginThread(func,NULL); //线程AAfxBeginThread(func,NULL); //线程B如果二者没有冲突,当他们都执行完毕后结果应该是a=0;但可能A线程执行到a=1,B线程也执行到这一句,然后二者都继续执行a--,则a变成了-1。这就是临界问题。func函数体内就是临界问题区 EnterCriticalSection().............LeaveCriticalSection() VC 6.0 可以批量显示图像的控件? 初学者求救:MFC中CView::OnMouseMove里面如何判断鼠标是左移还是右移啊? 请问:如何将局域网某台机器上的指定目录下的指定文件复制到本地? 局域网信使服务程序问题 如何在win32 .c文件中使用socket(不是MFC)? 请各位大虾帮忙推荐一本学习VC的比较好的教程. win7下安装LSP失败,谁知道怎么解决吗? 100分求vc实现客户端自动更新的源代码和文档 哪种安装制作工具最好用?哪种自解压安装工具最好用? VC的图形功能。 一个很菜的问题,请大家帮忙 如何编程实现wav文件转换成mp3文件?请指教
UINT func(LPARAM param)
{
a=1;
a--;
}上面是线程函数,如果开启了两个线程如下:
AfxBeginThread(func,NULL); //线程A
AfxBeginThread(func,NULL); //线程B
如果二者没有冲突,当他们都执行完毕后结果应该是a=0;
但可能A线程执行到a=1,B线程也执行到这一句,然后二者都继续执行a--,则a变成了-1。
这就是临界问题。
func函数体内就是临界问题区
......
.......
LeaveCriticalSection()