OmniThreadLibrary 是一个非常有趣的库。但是,我担心它在 Windows 服务中的使用。
存储库中的所有测试都是基于表单的。他们中的大多数人(隐式或显式)使用基于消息的基础设施(通过 TOmniEventMonitor)。
我做了一个小的 DUnit 测试,但它从未按预期工作。在我将 Application.ProcessMessages 放在代码的几个关键位置后,它才开始工作。 (!)
相同的测试在 Forms 应用程序中工作正常。但永远不要在像 DUnit 测试这样的连续过程代码中。
我错过了什么?我如何在 Windows 服务中使用 OmniThreadLibrary?还是在连续的过程中没有在几个点传播 Application.ProcessMessages?
最佳答案
服务中的 OmniThreadLibrary 工作正常。有一个 example在 repo 协议(protocol)中显示。
关于delphi - OmniThreadLibrary 可以在 Delphi Windows 服务中使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22451501/