MFC:从工作线程向主线程发送消息以停止工作线程
MFC: sending a msg from worker thread to the Main thread to stop the worker thread
我正在修复一个用MFC编程的GUI应用程序。要运行通信堆栈,将创建一个新线程。在某些事件中,我想停止这种情况,但我知道只有在工作线程中,我无法从停止工作线程本身中获得正确的行为。因此,我需要向主线程发送一条消息,并告诉它停止工作线程,以便主线程可以采取正确的操作。
我不知道该怎么做。我已经查看了CWnd中的SendMessage函数,但它没有将threadid作为参数,我也没有得到需要包含的内容http://msdn.microsoft.com/en-us/library/windows/desktop/ms644944(v=vs.85).aspx.
实际上,对工作线程执行任何操作的唯一安全方法是从工作线程本身内部执行。它可能应该被构造为while(bRun)循环,这样它就会一直运行到程序关闭。无论您要做什么(停止和启动),都应该由while循环中的代码来处理。
相关文章:
- 线程消息传递或更好:在"大师班"中访问其他班级的成员
- 将类成员函数作为线程调用到另一个类成员函数时发出警告消息
- C++ Poco - 如何向特定线程发送通知/消息?
- 如何从其他线程 winapi 获取消息
- 为什么分离线程没有得到输出消息
- QTcpSocket:消息不是从另一个线程发送的
- 多线程套接字编程服务器仅从 1 个客户端线程获取消息
- 视觉C++跨线程发送消息
- 从 Visual C++ 2010 中的单独线程调用消息框
- IPC Unix 消息队列线程安全吗?
- boost消息队列线程安全和进程安全吗?
- 为什么消息框不阻止线程?
- 回复:等待完整消息(可变大小消息,线程)
- 在状态栏上显示来自不同线程中回调的消息
- 增强ASIO和线程之间的消息传递
- 从内存转储中查找线程消息队列中的消息
- 来自另一个线程的 SendMessage() 调用是否将消息发布到消息队列
- 消息蜂鸣线程阻塞
- 多线程C++消息传递
- 线程消息之间的优先级