0
我有以下要求:14個WCF調用應該「並行」和「同時」執行,以便在14臺顯示器上啓動「同步」視頻。虛擬並行WCF服務調用盡可能快
請注意引號,因爲我完全知道這不是真的可能,但我想盡可能接近!
我嘗試了後臺線程和並行語句,大多數時候結果都非常好。但是,每次服務呼叫之間有時會有較大的延遲。
我的代碼如下所示:
BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += delegate(object sender, DoWorkEventArgs e)
{
Parallel.For(0, myChannelControllers.Length, n =>
{
try
{
IMyService channel = myChannelControllers[n].GetChannel();
channel.VideoWallPlay(...);
myChannelControllers[n].CloseChannel(channel);
}
catch (...)
{
}
});
};
worker.RunWorkerAsync();
優化任何想法?
我會在一個循環中獲取通道。然後播放並關閉另一個。爲什麼採取GetChannel的滯後? – Paparazzi
謝謝,好主意!我會試試看.. – Max