【发布时间】:2012-11-28 20:11:54
【问题描述】:
我只是好奇如何在不使用 Windows API WaitFor* 函数的情况下实现多线程,该函数会停止程序直到线程返回。如果线程阻止主应用程序调整大小或移动等,那么使用线程有什么意义?
是否有任何形式的带有线程的 Windows 消息传递,这将允许我调用我的线程函数然后返回,并在线程完成运行时处理线程的返回值?
【问题讨论】:
-
调用/返回不是线程间通信的合适术语——线程不能被调用也不能返回。使用您的操作系统和 GUI 实现提供的适当的线程间通信。在 Windows 上,这将是 SendMessage(),或者最好是 PostMessage()。不要试图等待 GUI 事件处理程序 - 这不是 GUI 线程的设计方式!
标签: c++ multithreading winapi