xna+wcf运行速度非常慢,但只有在满的时候!(发疯了?)



我有一个XNA应用程序,它使用WCF与另一个进程(在同一台计算机上)通信
在每个更新周期中,XNA将从其他进程获取数据。

XNA在窗口中运行良好(超过60fps),
但如果我试着全屏幕运行,我得到的是不到1fps
如果我关闭WCF,则不会发生这种情况。

为什么全屏会这样影响它
有什么想法吗?

谢谢。

如果没有太多细节,这似乎是一个很长的机会,但在我看来,你有一些线程饥饿问题,可能是由于页面翻转/缓冲区交换在等待什么?(你在用什么操作系统,有多少核心)

您应该尝试使用探查器并分析代码,看看关键秒在哪里。

若要快速修复,请尝试使用Thread.Sleep(1),或切换到WCF服务的异步调用。

最新更新