delphi - TIdThreadComponent OnTerminate 和 OnStopped 在哪个线程中执行?

标签 delphi c++builder indy indy10

关于 TIdThreadComponent 的非常简单但重要的问题:

OnTerminateOnStopped 在哪个线程中执行 - 主线程还是工作线程?

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

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

最佳答案

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

关于delphi - TIdThreadComponent OnTerminate 和 OnStopped 在哪个线程中执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15892057/

相关文章:

delphi - 两个 TChart 组件同步缩放

c++ - 是否可以在 RAD Studio 10 c++ 中设置 Window (x, y) Position?

c++ - InternetCanonicalizeUrl 无法解码变音字母

c++ - 在 32 Borland C++ Builder 中使用 64 位 DLL

delphi - 将文件从我的应用程序 (Indy/Delphi) 发送到 ASP 页面,然后发送到另一台服务器 (Amazon S3)

delphi - 无法将 Indy 更新到最新版本

delphi - 无法使用 IdHttp 解码响应内容

delphi - 需要一个带过滤功能的组合框

delphi - 如何在 Delphi 7 中使用 MSXML 6.0 创建 TXML 文档?

delphi - 从命令行构建时如何修改/替换选项集文件?