我想在程序初始化时,运行两个函数(用于监控)。这 2 个函数都有个死循环。
BOOL CNetDlg::OnInitDialog()
{
net1(); // 监控功能
net2(); //监控功能
}
现在走到net1()时,由于有个死循环了,就走不到net2了! 咱解决啊???
BOOL CNetDlg::OnInitDialog()
{
net1(); // 监控功能
net2(); //监控功能
}
现在走到net1()时,由于有个死循环了,就走不到net2了! 咱解决啊???
解决方案 »
- MFC播放wav文件
- 登录后Socket需重新连接
- MFC 对话框的打开和操作
- 接口上有HWND参数,就不能跨进程传递接口了,为什么?
- 函数中只有这一句,CString str("", 20000); 怎么会报错?
- 能否在单线程的程序中建立一个UI线程,以便通过此UI线程中的按钮结束主线程中长时间运行的函数。
- 请教VISTA及以上系统如何判断一个文件的最大图标是48×48还是256×256?
- 请教---关于菜单无法正确显示的问题!!!
- [求助]C++控制Excel,无法合并单元格
- 急!!!vc中如何使用tts语音引擎?
- 请教: 如何通过编程禁用和启用USB设备?
- 在c语言中,如何把字符'E'转换位0x0e 呢?
方法2: 開兩個時鍾...將你的個监控功能函數分別放到兩個時鐘里去做,-當然,這樣就不用死循環了,只要监控功能部份,根據需要設置時鐘的循環時間..
SetTimer(1/*時鐘1*/,1000/*時鐘循環時間1000ms=1s*/,NULL);
SetTimer(2/*時鐘2*/,1000/*時鐘循環時間1000ms=1s*/,NULL);
在時鐘函數中
void CXXXDlg::OnTimer(UINT nIDEvent)
{
switch( nIDEvent )
{
case 1: //時鐘1
..........需要的监控功能
break;
case 2: //時鐘2
..........需要的监控功能
break;
}
CDialog::OnTimer(nIDEvent);
KillTimer(1); //程序結束時殺掉時鐘
KillTimer(2);