Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/161.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将任务委托给主线程并等待它';什么是执行完成? 我有一个Borland C++项目,在这里我看到一个同步线程()方法,它是一个辅助线程可以用来将任务委托给主线程并等待任务完成。在C#中,有一个类似的Control.Invoke()方法。在Visual Studio中,对于GUI和控制台应用程序,在C++中是否有类似的操作?我想到SendMessage(),但这是否等同于上述两种方法?_C#_C++_Multithreading - Fatal编程技术网

如何将任务委托给主线程并等待它';什么是执行完成? 我有一个Borland C++项目,在这里我看到一个同步线程()方法,它是一个辅助线程可以用来将任务委托给主线程并等待任务完成。在C#中,有一个类似的Control.Invoke()方法。在Visual Studio中,对于GUI和控制台应用程序,在C++中是否有类似的操作?我想到SendMessage(),但这是否等同于上述两种方法?

如何将任务委托给主线程并等待它';什么是执行完成? 我有一个Borland C++项目,在这里我看到一个同步线程()方法,它是一个辅助线程可以用来将任务委托给主线程并等待任务完成。在C#中,有一个类似的Control.Invoke()方法。在Visual Studio中,对于GUI和控制台应用程序,在C++中是否有类似的操作?我想到SendMessage(),但这是否等同于上述两种方法?,c#,c++,multithreading,C#,C++,Multithreading,SendMessage适用于GUI应用程序,其中主线程有一个消息队列。对于控制台应用程序,没有通用的方法。您需要首先决定主线程应该如何处理此类请求。若控制台应用程序的主线程具有消息队列,则SendMessage也可以。您可以考虑另一种方式,例如,使用事件,所有操作都取决于主应用程序线程的行为及其处理来自其他线程的请求的能力。SendMessage接受HWND,因此它不适用于(纯)控制台应用程序。您可以使用 PrxTraseMeult>代码,但您必须处理等待自己-- PrtTraceMeule>代

SendMessage适用于GUI应用程序,其中主线程有一个消息队列。对于控制台应用程序,没有通用的方法。您需要首先决定主线程应该如何处理此类请求。若控制台应用程序的主线程具有消息队列,则SendMessage也可以。您可以考虑另一种方式,例如,使用事件,所有操作都取决于主应用程序线程的行为及其处理来自其他线程的请求的能力。

SendMessage
接受HWND,因此它不适用于(纯)控制台应用程序。您可以使用<代码> PrxTraseMeult>代码,但您必须处理等待自己--<代码> PrtTraceMeule>代码>是A-Syc。@ Ern,感谢亚历克斯和Ern的答复。注意这不是C++,而是关于OS和系统特定的库。C++没有任何多任务支持标准化(但……)