簡體   English   中英

調用正在運行的線程c#

[英]Calling a Running thread c#

我有一個Windows服務,主線程產生幾個子線程來執行工作。 主線程按名稱維護這些線程的列表。 子進程完成后,主線程將其從列表中刪除。 Main使用計時器定期啟動子線程(如果它尚未運行)(通過檢查列表)。 線程以“即發即忘”線程啟動。 有時兒童線程可能會掛起,或者可能只需要很長時間。 但我的主線程無法知道。 我希望主線程能夠“調用”子線程並詢問“你在做什么嗎?” 如果孩子回應,那么我知道他沒有掛。

你可以使用心跳

每次執行一些小動作時,子線程都會使用當前UTC時間更新變量。 每個線程(或並發字典)都需要一個( 正確鎖定的 )變量。

您的主線程會定期檢查這些心跳。 如果心跳超過某個給定的時間,主線程知道子線程的某些操作比應該花費的時間長。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM