![]() |
1
13
OmnithreadLibrary绝对可以帮助您。来自OTL发行版的测试5应该可以帮助您开始。 在这个演示中,“开始”按钮创建线程并设置一些参数和计时器(如果不需要,可以在代码中删除)。change message“向线程发送消息,此消息在线程的omchangemessage方法中处理。然后,线程将一些信息发送回客户机(本演示中的omsendmessage,但您可以在将要在其中执行工作的同一条消息中执行此操作),并且主线程通过omniventmonitor组件接收此消息。”“停止”按钮停止工作线程。 如果在线程忙时收到更多的消息,那么在您的辅助方法完成工作后,这些消息将被排队处理。当没有什么可做时,线程将使用进程中的零CPU周期等待下一条消息。 编辑 在Delphi 2009及更高版本中, Background Worker 模式提供了一个更简单的解决方案。 |
![]() |
2
2
waitForSingleObject()可以等待几种类型的同步对象。您可以使用Windows“事件”同步对象(与Delphi事件无关)。创建事件(在syncobjs、iirc中有一个delphi-tevent包装器),然后调用waitforsingleobject来等待该事件变为信号。当必须唤醒线程时,调用setEvent将事件置于信号状态,并返回waitForSingleObject。您可以使用waitformultipleobjects()让线程等待多个对象中的一个(或全部),它还将告诉您哪个对象已发出信号。 |
![]() |
3
1
即使没有窗口句柄,也可以向线程发送消息。只是使用
但是,如果您不了解线程编程,那么从OTL开始而不是从低级的东西开始可能确实是一件好事。 |
![]() |
4
1
下面是一个简单的例子,你如何做到…
|
![]() |
Some1Else · 函数在Delphi中重新创建TForm 3 年前 |
![]() |
Agmcz · Delphi安卓库。so未安装(AAB) 3 年前 |
![]() |
nader · 如何使用delphi在web上提交表单 6 年前 |
![]() |
kwadratens · Delphi中的卡方分布函数代码 6 年前 |
|
user9672569 · 如何在完整的位图图像中绘制阴影效果? 6 年前 |
![]() |
mmmm · MSBuild(用于Delphi)Make-like功能 7 年前 |