一个关于线程的简单问题,各位大哥看看这么做行吗? 我要用一个按钮来触发一个文件的读出事件,但是文件的读出用的是死循环,我想还用这个按钮触发来跳出死循环,所以要用一个线程来调用死循环,但是线程是写在触发按钮的函数中,那我写的线程的回调函数能是触发这个按钮的函数嘛?如果不行,大家看看怎么解决那? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以:BOOL bCreateThread=FALSE;//是否创建了线程当然全局变量HANDLE m_hShutDown;//按钮中的函数if(bCreateThread){SetEvent(m_hShutDown);//结束线程}else{m_hShutDown=CreateEvent(NULL,TRUE,FALSE,NULL);AfxBeginThread(.....);}//线程的回调函数for(;;){//你要添加的读文件函数dwResult=::WaitForSingleObject(m_hShutDown,0);//不等待立即返回除非触发m_hShutDown事件if(dwResult==WAIT_OBJECT_0){AfxEndThread(100);}} OnXXXClick(){1.定义一个标志量(标志事件是在读,还是停止)2.当Flag == STOP AfxBeginThread() 3.当Flag == READ TerminateThread()} CWinThread *m_FileRead;m_FileRead=AfxBeginThread(yourThread,yourParam);OnButton1Click(){ m_FileRead->Resume();}OnButtonClick(){ m_FileRead->Suspend();} MFC编辑框根据内容调整大小 TCP协议的一点问题? SetWindowsHookEx(WH_GETMESSAGE,HookProc,hInstance,NULL); 关于枚举电脑上的账户问题 请教高手一个很困惑的问题 怎么由IP地址得到域名?? 参数类型问题,给出思路有分. Timer控件 有没有tcp/ip编程的高手啊?现在就想认识,小弟想请教几个问题 不同进程利用内存映射文件共享数据的问题 多收了三五斗之年终奖篇 那里可以下代理服务器的源代码
BOOL bCreateThread=FALSE;//是否创建了线程当然全局变量
HANDLE m_hShutDown;//
按钮中的函数
if(bCreateThread)
{
SetEvent(m_hShutDown);//结束线程
}
else
{
m_hShutDown=CreateEvent(NULL,TRUE,FALSE,NULL);
AfxBeginThread(.....);
}//线程的回调函数
for(;;)
{
//你要添加的读文件函数
dwResult=::WaitForSingleObject(m_hShutDown,0);//不等待立即返回除非触发m_hShutDown事件
if(dwResult==WAIT_OBJECT_0)
{
AfxEndThread(100);
}
}
{
1.定义一个标志量(标志事件是在读,还是停止)
2.当Flag == STOP AfxBeginThread()
3.当Flag == READ TerminateThread()
}
m_FileRead=AfxBeginThread(yourThread,yourParam);OnButton1Click()
{
m_FileRead->Resume();
}
OnButtonClick()
{
m_FileRead->Suspend();
}