两个线程争夺资源,程序会挂掉吗 我做了一个程序,多个线程同时进行,在写文件的时候,可能会出现多个线程同时写一个文件的情况,也就是争夺一个资源,请问这样程序会挂掉吗 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 作为映射文件打开CreateFileMapping,然后读写之前WaitForSingleObject。 独占写时会返回失败吧,处理掉就好了。再保险点catch CFileException. 肯定会吧,建议设一对lock();和unlock();写之前先加锁,写完再解锁.如果写之前发现已经锁上了,就先等待,等待n个周期之后仍然锁着,另作处理. 线程同步就行了。正好我这有个例子借你用用,就是写日志时用的:void CLog::WriteLog(CString buf){ InitializeCriticalSection(&cs_Log); EnterCriticalSection(&cs_Log); Flog(buf); buf.ReleaseBuffer(0); LeaveCriticalSection(&cs_Log);} 关于opengl3的问题。 通过菜单打开一个模态对话框,怎么样在模态对话框中获得视类的指针? FindFirstFile文件排序问题,高手进! 为什么程序运行时,output提示“Access violation writing location” 给按钮加载位图,资源释放的问题。 vc下执行DOS执行程序时,可不可以不出来dos黑框? 请问一个画图的SelectObject的问题 winpcap编译时的一个问题 关于 Scroll Bar 请问哪位大虾做过mpeg文件的播放器阿,求教 新手问题:如何把一个对话框DLG1内的2个编辑框数据关联到另一个对话框的列表中 socket如何接收数据
正好我这有个例子借你用用,就是写日志时用的:
void CLog::WriteLog(CString buf)
{
InitializeCriticalSection(&cs_Log);
EnterCriticalSection(&cs_Log);
Flog(buf);
buf.ReleaseBuffer(0);
LeaveCriticalSection(&cs_Log);
}