我尝试了很多方法,但没有什么工作正常。我是编程和多线程操作的新手,对我来说很难理解。 在Windows Metro中我可以使用:
Appcallbacks.instance.InvokeOnAppThread
我怎么能在wp8中做到这一点?
这项工作,但抛出C ++异常,我知道这不是正确的方式
Deployment.Current.Dispatcher.BeginInvoke(()=>UnityApp.BeginInvoke(new UnityPlayer.Action(() => { my functions })));
答案 0 :(得分:0)
Unity3d不是线程安全的,你不能从主线程以外的任何其他线程调用它:http://answers.unity3d.com/questions/7524/is-the-unity-api-threadsafe.html
答案 1 :(得分:0)
您必须编译本机WP8 dll并从那里调用Dispatcher。使用Unity代码可以使用的回调创建一个静态WP8方法。