Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.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
Multithreading 将CreateThread调用移植到Win8/WinRT应用程序 我需要从我的C Win8/WinRT应用程序调用C++库。< /P>_Multithreading_Winapi_Windows 8_Winrt Async - Fatal编程技术网

Multithreading 将CreateThread调用移植到Win8/WinRT应用程序 我需要从我的C Win8/WinRT应用程序调用C++库。< /P>

Multithreading 将CreateThread调用移植到Win8/WinRT应用程序 我需要从我的C Win8/WinRT应用程序调用C++库。< /P>,multithreading,winapi,windows-8,winrt-async,Multithreading,Winapi,Windows 8,Winrt Async,该库是多线程的,通过调用Win32 API(WaitForSingleObject等)来管理线程。我能够找到所有这些调用的替换项(应用程序总是有一个..Ex版本可用,例如

该库是多线程的,通过调用Win32 API(
WaitForSingleObject
等)来管理线程。我能够找到所有这些调用的替换项(应用程序总是有一个
..Ex
版本可用,例如
中的
WaitForSingleObjectEx
,看看你是否在找它)

但有一个电话我不知道如何替换:这是一个电话。没有等价物,所以看起来这样的线程创建现在必须通过新的API

但是我还没有深入研究WinRT上的新线程模型。根据您的经验,移植这个线程创建调用的正确方法是什么?唯一的限制是它是一个C++库,我构建为“WiApp”项目的C++库。 总结:


在我为我的应用程序链接的库中,线程是通过创建的。我需要将这些调用更改为什么以使其在我的应用程序环境中工作?

您是正确的:您不能简单地用新调用替换CreateThread。您必须将线程代码移植到新的API


根据我的经验,如果您希望更轻松地将代码移植到WinRT线程池模型,Raman Sharma的文章是一个很好的参考。我已经成功地使用在那里找到的垫片实现了一个Win32线程仿真层,我的旧的Win32依赖代码可以与之交互。

您可能想查看这篇关于在新的Windows应用商店应用程序环境中模拟旧线程API的博文: