我創建了一個proc,它可能只是根據輸入而懸掛在那裏。現在我想爲它設置一個超時值,並強制它返回並在時間到期後繼續其他工作。TCL:超時一個可能掛起的proc
vwait
的方式似乎不適用於我的情況在這裏。如果我把我的vwait
PROC後,如:
after sometime set status timeout
proc_may_hang
vwait status
如果PROC掛起時,vwait
永遠不會被執行,事件循環從來沒有得到啓動和系統不知道或者監視變量狀態。
而且我也無法使用多線程來啓動監視進程。 TCL解釋器來自EDA軟件,Thread包不可用。
那麼有沒有辦法強制proc返回?非常感謝!
會發生什麼樣的掛起事件? IO阻塞呼叫? – Dinesh
@Dinesh對不起,不澄清這一點。這個過程只是因爲有大量的計算任務要做,而且即使經過很長時間也沒有任何迴應。 proc只包含一些計算命令。這在EDA軟件中發生了很多,如果發生掛起並跳到下一個,我想跳過這個工作。我希望我已經表達清楚。 –
我的第一個想法是創建一個從解釋器並將計算推入該解釋器。看來殺死那個翻譯會更容易些。儘管如此,這可能是過度的。 –