每次從UI線程執行MediaPlayer.Play()
UI會凍結很長一段時間。我不認爲你可以做任何關於開始播放SongCollection的時間,但至少UI應該保持響應。 從另一個線程運行MediaPlayer.Play()
顯然不起作用。MediaPlayer.Play()導致UI凍結
回答
MediaPlayer是Xna命名空間中的一個組件。如果您在遊戲中使用此功能,你是最可靠運行GameLoop防止這種凍結情況的發生:GameLoop
如果在一個應用程序中使用該組件,您可以模擬這種行爲你自己
public MainPage()
{ InitializeComponent();
// Timer to simulate the XNA Game Studio game loop (Microphone is from XNA Game Studio)
DispatcherTimer dt = new DispatcherTimer();
dt.Interval = TimeSpan.FromMilliseconds(33);
dt.Tick += delegate { try { FrameworkDispatcher.Update(); } catch { } };
dt.Start();
}
(請參閱有關如何在遊戲循環之外運行麥克風的完整示例:msdn)
所以你的意思是我應該把我的項目的其餘部分放入循環中? – Stacksatty
否。該循環將用於遊戲場景中。在你的情況下,只在你使用音頻組件的頁面中添加dispatcherTimer –
好吧,我試過了,但不幸的是它沒有修復凍結。 – Stacksatty
- 1. Tkinter Threading導致UI凍結
- 2. 更新的ObservableCollection導致UI凍結
- 3. ThreadPool導致GUI凍結(?)
- 4. 循環導致excel凍結?
- 5. Popen導致程序凍結
- 6. NSFetchedResultsController導致iPhone 3G凍結
- 7. Inno setup:ExtractTemporaryFile導致嚮導凍結
- 8. 導致UI線程凍結的多個領域事務
- 9. Android對話框和AsyncTask導致UI凍結
- 10. 從插座讀inputstreams導致Android的UI凍結
- 11. 使用WebRequest抓取圖像會導致UI凍結
- 12. Silverlight TimePicker/ChildWindow/DataTemplate組合導致UI凍結
- 13. 當NSMenu打開時出現NSAlert會導致UI凍結
- 14. AsyncTask凍結UI
- 15. QFileSystemModel凍結UI
- 16. NSFetchedResultsController凍結UI
- 17. map.fitBounds(bounds)導致瀏覽器凍結
- 18. Swift編譯器優化導致凍結
- 19. Telerik radcombobox導致Chrome瀏覽器凍結
- 20. Hello World導致iPhone 5s凍結
- 21. while循環導致Unity凍結
- 22. JS導致瀏覽器凍結
- 23. iOS7 AVMutableVideoCompositionLayerInstruction導致視頻幀凍結
- 24. pyqt5 click in terminal會導致GUI凍結
- 25. Django pip凍結導致空文件
- 26. MusicPlayerSetPlayRateScalar在__psynch_mutexwait中導致掛起/凍結
- 27. Javascript - SetTimeout導致瀏覽器凍結
- 28. 什麼導致程序凍結
- 29. Android EditText setText導致軟鍵盤凍結
- 30. KVO綁定導致程序凍結?
請您可以發佈相關代碼。 – deathismyfriend