我正在创建一个mediaPlayer实例,它打开一个wav文件,播放它,完成后(我知道它由Media_ended事件完成)打开一个不同的wav文件并连续进行预处理。
在此过程的中间,可能会发生用户事件。此事件会停止mediaPlayer,关闭它并为mediaPlayer设置新的源。
我想重用系统中的wav文件。这意味着在我关闭mediaPlayer后,我更改了wav文件。 有时我尝试在Media_Opened事件未触发时更改由mediaPlayer.Open()设置为mediaPlayer源的wav文件时遇到问题。
根据我对mediaPlayer的理解,open在不同的线程中发生。优先级较高的用户事件会停止打开过程。有时打开过程在中间停止,在文件打开的阶段但是过程没有完成,以便关闭释放文件。
我能正确理解流程吗?
我如何确保文件的发布?或者如何在关闭之前确保文件正确打开?