其他分享
首页 > 其他分享> > 导致代码在运行时不使用PrepareMethod被预先JIT

导致代码在运行时不使用PrepareMethod被预先JIT

作者:互联网

我需要使我的应用程序中的某些代码预先预先确定.该方案是在Windows Phone下运行的XNA游戏.第一次发生爆炸时,在实施爆炸物理建模的方法被JIT调试时会有明显的停顿.我知道这一点,因为这个问题也发生在Windows版本上,并且在对NGEN进行汇编时消失了.我还使用了运行时JITting的方法,这里和originates on CodeProject(使用反射和PrepareMethod)中的一些答案中都提到了这种方法.

但是,我不能使用NGEN,因为它是Windows Phone应用程序.我也不能使用其他方法PrepareMethod标记为SecurityCritical,并且您不能在Windows Phone上调用它.

我不介意可能要花一些时间的事实,因为初始化会在显示加载屏幕时在单独的线程上进行.

是否有任何精巧的方法可以达到相似的结果,否则,根本没有任何方法?

解决方法:

到目前为止,在Windows Phone中,您唯一可以做的就是通过实际调用强制JIT方法.

我会在您的应用程序正在加载时调用该方法,也许在它显示加载屏幕之类的时候调用该方法.这样,当用户在游戏中实际击中它时,JIT就已经得到了照顾.

标签:xna,windows-phone-7,jit,c
来源: https://codeday.me/bug/20191201/2077776.html