我有網絡請求,我用streamreader讀取信息。我想在15秒後在此流媒體播放器後停止播放。因爲有時讀書過程需要更多時間,但有時會順利。如果閱讀過程需要15秒以上的時間,我該如何阻止它?我打開所有想法。c#幾秒鐘後停止流式讀取器。這可能嗎?
2
A
回答
1
使用System.Threading.Timer並將打勾事件設置爲15秒。這不是最乾淨的,但它會起作用。或者一個秒錶
--stopwatch選項
Stopwatch sw = new Stopwatch();
sw.Start();
while (raeder.Read() && sw.ElapsedMilliseconds < 15000)
{
}
--Timer選項
Timer t = new Timer();
t.Interval = 15000;
t.Elapsed += new ElapsedEventHandler(t_Elapsed);
t.Start();
read = true;
while (raeder.Read() && read)
{
}
}
private bool read;
void t_Elapsed(object sender, ElapsedEventArgs e)
{
read = false;
}
0
你將不得不運行在另一個線程任務,並從你的主線程監視是否正在運行長於15秒:
string result;
Action asyncAction =() =>
{
//do stuff
Thread.Sleep(10000); // some long running operation
result = "I'm finished"; // put the result there
};
// have some var that holds the value
bool done = false;
// invoke the action on another thread, and when done: set done to true
asyncAction.BeginInvoke((res)=>done=true, null);
int msProceeded = 0;
while(!done)
{
Thread.Sleep(100); // do nothing
msProceeded += 100;
if (msProceeded > 5000) break; // when we proceed 5 secs break out of this loop
}
// done holds the status, and result holds the result
if(!done)
{
//aborted
}
else
{
//finished
Console.WriteLine(result); // prints I'm finished, if it's executed fast enough
}
2
既然你說「網絡請求」,我假設t流讀取器包裝一個System.IO.Stream
,您通過調用httpWebRequest.GetResponse().GetResponseStream()
從HttpWebRequest
實例獲得。
如果是這樣的話,你應該看看HttpWebRequest.ReadWriteTimeout
。
相關問題
- 1. 幾秒鐘後停止requestAnimationFrame
- 2. Jw播放器在幾秒鐘後停止在Firefox中
- 3. Spotify音頻播放器在幾秒鐘後隨機停止
- 4. NodeMCU-PyFlasher-1.0.0.exe幾秒鐘後終止
- 5. 工作客戶端開始後幾秒鐘停止
- 6. Android應用播放音樂幾秒鐘後停止工作
- 7. 如何暫停顯示器幾秒鐘?
- 8. 幾秒鐘後如何獲取MouseDown?
- 9. SPTimerv3在幾分鐘後保持停止
- 10. 幾秒鐘後更改ImageView
- 11. 幾秒鐘後隱藏div
- 12. 計時器每秒鐘幾秒
- 13. 龍捲風應用程序定期停止幾秒鐘,100%CPU
- 14. Vagrant/puPHPet服務器工作幾分鐘,然後停止響應
- 15. 幾分鐘後計時器停止,爲什麼?
- 16. Ninject WebAPI.SelfHost性能問題在負載下(每幾秒鐘幾秒)
- 17. 無法在一分鐘後停止流式傳輸
- 18. 幾秒鐘後顯示警告視圖
- 19. ACM1602B-FL-YBW在幾秒鐘後關閉
- 20. 幾秒鐘後重新啓用按鈕
- 21. 幾秒鐘後圖像交換
- 22. 幾秒鐘後視頻播放消失
- 23. 幾秒鐘後應用程序崩潰
- 24. 幾秒鐘後出現的UINavigationItem
- 25. 在幾秒鐘後刷新JSON數據
- 26. 幾秒鐘後清除通知
- 27. Python:幾秒鐘後從True變爲False
- 28. 幾秒鐘後形成的Javascript圖像
- 29. 幾秒鐘後應用程序崩潰
- 30. 幾秒鐘後自動顯示div javascript
澄清:你的意思是等待更多數據15秒後,或連續閱讀15秒後停止? – 2010-08-03 14:38:57
我的意思是在等待更多數據15秒後停止。 – 2010-08-03 14:52:03