2012-03-10 129 views
1

我有一個使用WCF與另一個進程(在同一臺計算機上)進行通信的XNA應用程序。
在每個更新週期中,XNA將從其他進程獲取數據。xna + wcf運行速度非常慢 - 但只有當fullsceen! (瘋了?)

的XNA運行良好的窗口時(超過60fps的),
但如果我嘗試運行它在全屏,我越來越小於1fps。
這不會發生,如果我關閉WCF。

爲什麼全屏幕會影響它呢?
任何想法?

謝謝。

回答

0

這似乎是一個長鏡頭,假設沒有太多細節,但是在我看來你有一些線程捱餓問題,可能是由頁面翻轉/緩衝區交換等等引起的? (你在使用什麼操作系統,有多少核心)

你應該嘗試使用分析器和分析代碼來查看關鍵部分的位置。

爲了快速修復,請嘗試使用Thread.Sleep(1)或切換到您的WCF服務的異步調用。

+0

在雙核CPU的Win7 64bit上運行。真正殺死我的是,應用程序運行良好時,不全屏。代碼是相同的。我會嘗試睡眠技巧。 – 2012-03-12 01:36:56

+0

運氣好嗎? – Alex 2012-03-13 08:39:43

相關問題