問候,我試圖播放一些音頻文件,而不阻止GUI。以下是代碼示例:C#線程隊列同步
if (audio)
{
if (ThreadPool.QueueUserWorkItem(new WaitCallback(CoordinateProc), fireResult))
{
}
else
{
MessageBox.Show("false");
}
}
if (audio)
{
if (ThreadPool.QueueUserWorkItem(new WaitCallback(FireProc), fireResult))
{
}
else
{
MessageBox.Show("false");
}
}
if (audio)
{
if (ThreadPool.QueueUserWorkItem(new WaitCallback(HitProc), fireResult))
{
}
else
{
MessageBox.Show("false");
}
}
情況是樣本未按順序播放。有些在另一個之前播放,我需要解決這個問題,因此樣品依次播放。
我該如何執行此操作?
謝謝。
編輯:ThreadPool.QueueUserWorkItem(new WaitCallback(FireAttackProc), fireResult);
我已經把我所有的聲音片段在FireAttackProc。這是不行的,我想要的是:等到線程停止運行,然後再開始一個新的線程,這樣樣本不會重疊。
線程設計爲同時執行任務,其他的以後打一個聲音是不是併發執行。你有可能在獨立的線程上播放聲音,但不是_each_聲音。佩託伊是正確的。 – 2010-03-28 19:01:53
也可以使用線程,以便在等待數據時主GUI線程不會凍結。這就是我想在這裏做的。 – iTEgg 2010-03-28 20:56:27