VC++基础 使用自定义消息实现线程间的通信
2010-12-22 20:37
501 查看
自定义消息和全局变量:
线程体:
主线程接收消息:
#define WM_USERMSG WM_USER+100//自定义消息 volatile int SpeedControl;//定义全局变量
线程体:
UINT ThreadFunc(LPVOID lpParam) //线程函数 { NumInfo* pInfo=(NumInfo*)lpParam; //线程函数参数 int i=0; CString str; while(true) { if(SpeedControl==1) //低速计数 { str.Format("%d",i); pInfo->pedit->SetWindowText(str); Sleep(2000); i++; if((i%17)==0)//计数到了17的整数倍 { ::PostMessage(pInfo->hwnd,WM_USERMSG,0,0); //向主线程发送消息 } } if(SpeedControl==2) //高速计数 { str.Format("%d",i); pInfo->pedit->SetWindowText(str); Sleep(250); i++; if((i%17)==0)//计数到了17的整数倍 { ::PostMessage(pInfo->hwnd,WM_USERMSG,0,0); //向主线程发送消息 } } if(SpeedControl==0) //暂停 { str.Format("%d",i); pInfo->pedit->SetWindowText(str); Sleep(200); } } return 0; }
主线程接收消息:
LRESULT CMessageThreadDlg::OnMsg(WPARAM wParam,LPARAM lParam) { // TODO: Add your control notification handler code here AfxMessageBox("当前计数器的计数为17的整数倍");//提示对话框 return true; }
相关文章推荐
- VC编程DLL通知应用程序exe通信(使用自定义消息实现)
- Windows使用自定义消息实现进程之间通信
- 自定义消息实现线程间通信
- 自定义消息实现线程间通信
- Android基础--使用AIDL实现进程间的通信
- Android的消息机制,用Android线程间通信的Message机制,Android中Handler的使用方法——在子线程中更新界面,handler机制
- VC中利用多线程实现线程间通信
- VC中自定义消息实现(转载于并加以修改)
- vc++ 自定义消息和WM_NOTIFY消息实现
- vc中使用SendMessage正确发送自定义消息的方法
- C++ vc中怎么使用SendMessage自定义消息函数
- ios开发UI基础—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- vc自定义消息的发送与接收的方法实现
- Android使用Handler实现子线程与子线程、主线程之间通信
- VC中利用多线程技术实现线程之间的通信
- Delphi使用spcomm实现串口通信 基础知识及(两个实例)
- vc自定义消息的发送与接收的方法实现
- vc自定义消息的发送与接收的方法实现
- VC中利用多线程技术实现线程之间的通信(转)
- iOS开发UI基础—24使用纯代码自定义UItableviewcell实现一个简单的微博界面布局