如何在主线程中处理程序挂起?

时间:2016-02-10 12:18:49

标签: multithreading delphi

我有一个程序(让我们称之为setFormStored(false);)在另一个程序(proc1)内调用,并且程序mainproc不时挂起或执行一段时间不值得等候。在主线程内部调用proc1。我想知道在这种情况下最好的决定是什么 - 有没有办法检测程序是否在没有多线程的情况下在一定时间后没有响应,如果不是,那么处理等待的最佳方法是什么线程:

mainproc

1 个答案:

答案 0 :(得分:-1)

您需要一个防护线程监控proc1的进入和退出。

例如,proc1在进入时设置自动复位信令事件 A ,并在退出时设置自动复位信令事件 B ;保护线程无休止地等待事件 A ;当 A 发生时,保护线程开始等待给定超时的事件 B ;如果超时,则proc1挂起。