使用WP8.1 MapControl.SetLocation()方法时AccessViolationException

时间:2014-12-07 23:52:23

标签: multithreading map windows-runtime async-await windows-phone-8.1

我正在开发基于MapControl控件的Windows Phone 8.1 WinRT应用程序(通用应用程序)。

问题在于,出于不明原因,当我调用MapControl.SetLocation()方法时,我得到AccessViolationException。它并不总是发生 - 实际上我已经使用该方法很长一段时间了,一切都很好。但现在我正在开发新功能 - 它归结为从MSDN(图钉群集)移植代码 - MSDN Sample。代码包含一些回调逻辑,一些async / await使用。问题在前面提到SetLocation()。我不知道它为什么会抛出异常。

我尝试过的事情:

  1. 我正在使用MVVMLight,因此使用DispatcherHelper.CheckBeginInvokeOnUI()进行了大量实验。什么都没有。
  2. 试图确保是否在UI线程中创建了图钉对象 - 我不知道如何在调试器中执行此操作(我应该检查任务窗口还是线程窗口)。
  3. 我没有发布任何代码,因为,正如您可以想象的那样,代码相当多 - 而且我不知道这是否有用。所以,我的问题是,你知道在调用AccessViolationException时可能会导致抛出CheckBeginInvokeOnUI吗?也许有一些我不知道的约束。

0 个答案:

没有答案