windows-runtime – CoreWindow :: GetCurrentForThread()始终为NULL

前端之家收集整理的这篇文章主要介绍了windows-runtime – CoreWindow :: GetCurrentForThread()始终为NULL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试在 Windows Phone 8上使用C语言获取CoreDispatcher,以便我可以将工作项提交到UI线程Dispatcher,以便我可以更新UI线程上的UI元素.但是,当我调用CoreWindow :: GetCurrentForThread()时,我得到NULL.在 the documentation中,它声明WP8支持功能.只要我为当前Window获取NULL,我就无法从中获取当前的Dispatcher;有谁知道如何在WP8上获得当前的Dispatcher?

解决方法

CoreWindow :: GetForCurrentThread()记录为返回:

The CoreWindow for the currently active thread.

如果从没有CoreWindow的线程(如任何非UI线程)调用函数,则此函数将返回nullptr.

假设应用程序已完成初始化并且有一个视图,您可以通过CoreApplication::MainView从应用程序的主视图中使用调度程序.或者,您可以将用于UI线程的Dispatcher ^传递给在非UI线程上执行的代码,以便当它需要调用回UI线程时它可以访问它.

猜你在找的Windows相关文章