2

非常简单但重要的问题TIdThreadComponent

在哪个线程中OnTerminate执行OnStopped- 主线程或工作线程?

当我在这些事件中(并调用 VCL 属性和方法)时,我可以安全地假设我在主线程中吗?

更新:我想我可能会使用调试器,在尝试之后,看起来像是OnStopped在工作线程内并且OnTerminate在主线程内。额外的好处是调试器可以帮助确定在哪里执行启动/停止/控制线程的其他相关函数并减少可能的错误。

4

1 回答 1

7

你的观察是正确的。 OnStopped在工作线程的上下文中触发。 OnTerminated在主线程的上下文中触发。

于 2013-04-09T02:58:46.483 回答