delphi多线程delphi能否以多线程的方式调用一个过程
delphi多线程 时间:2021-06-24 阅读:(
)
delphi 多线程,求帮忙
多线程不好弄的,现在也没有什么意义了,CPU那么高的速度,386时代弄一弄还有意义,现在是四核时代了,一个软件放些多线程,没有啥意义的,我感觉就是一段代码写上二千行,执行起来也没有停顿感.和DLL一样,多线程应该被抛弃了.我一段二千多行的代码,全是从一篇三千字的文章中截取字符,并赋值给不同的编辑框的,随着按钮的按下,要的东西就马上出来了.完全没有停顿的感觉.原先想这段代码这长弄一线程来执行它吧,结果没有什么意义.不过学习的话,又另当别论.反正这东西不好弄,加了多线程的代码看起来就如同天书.Delphi多线程怎么处理?
这种问题必须要应用多线程处理,关于你本身的问题你可以用线程池来处理,这个开销比新创建线程要小一些,须要你本身写一个线程池处收成重点是可以快速取到余暇线程),3 解算后的数据发出,当时光包含在2中的最大年夜耗不时光内1 接收事宜触发接收过程,进行数据预处理我不知道你的预处理是否是必须的,并且必须是在线程处理之前完成,我认为接收事宜触发接收过程,收到数据立时放入主线程(也就是我说的线程池治理线程),之后你的过程持续等待下一波数据,而子线程开端处理数据。
2 数据预处理后,发出自定义事宜或者消息触发数据解算线程,解算最大年夜耗时200-250ms,最小100ms没须要定义什么自定义消息,你可以在主线程中,等待子线程完成计算,然后做最后的处理。
计算后的数据须要发出? 那一样的事理,按照次序发出即可。
打字不易,如满意,望采纳。
DELPHI怎么实现多线程? 在线等
unit bncthrd;
interface
uses
winprocs,classes,graphics,extctrls;
type
tbouncethread=class(tthread)
private
fshape:tshape;
fxspeed:integer;
fyspeed:integer;
procedure moveshape;
protected
procedure execute;override;
public
constructor create(suspended:boolean;shape:tshape;xspeed,yspeed:integer);
propertyshape:tshapereadfshape;
end;
implementation
procedure tbouad.moveshape;
var
maxheight,maxwidth:integer;
begin
with fshape do
begin
left:=left+fxspeed;
:+fyspeed;
if(left=0) or(left+width=parent.width)then
fxspeed:=fxspeed*-1;
=0)=height+parent.height)then
fyspeed:=fyspeed*-1;
end;
end;
procedure tbouncethread.execute;
begin
while not terminated do
begin
synchronize(moveshape);
end;
end;
constructor tbouncethread.create(suspended:boolean;shape:tshape;
xspeed,yspeed:integer);
begin
inherited create(suspended);
fshape:=shape;
fxspeed:=xspeed;{x轴走向的速度}
fyspeed:=yspeed;{y轴走向的速度}
freeonterminate:=true;
end;
end.
执行时我们可以新建一个程序,然后在uses部分加入以上的bncthrd单元,再在它的窗体form1上加入两个shape控件shape1和shape2,shape1可以是一个矩形而shape2
是一个圆。
加入以下的代码就可以让矩形和圆动起来。
unit Unit1;
interface
uses
bncthrd,Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
Shape1: TShape;
Shape2: TShape;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
tbouncethread.create(false,shape1,1,2);
tbouncethread.create(false,shape2,2,3);
end;
end.delphi能否以多线程的方式调用一个过程
createThread(nil,0,@showImage(,number),nil,0,ID);
第三个参数应该是函数指针 也就是,@showImage
第四个参数是这个函数所要用的参数的指针,所以你这里最好定义成一个结构体.
调用同一个过程是可以的,但是如果你这个过程对界面进行了操作的,那么就需要同步.
如果你对windows底层比较了解,可以这个样用.
不然还是继承Delphi的TThread来弄吧.
方便控制一些
RAKsmart 商家八月份的促销活动今天更新。基本上和上个月的产品套餐活动差不多的,不过也是有简单的微调。对于RAKsmart商家还是比较了解的,他们家产品虽然这两年增加多个机房,以及在VPS主机方案上有丰富的机房和调整到一些自营机房,他们家的策划能力还是有限,基本上每个月的套餐活动都差不多。RAKsmart 在八月份看到有新增香港高防服务器可选,最高100GB防御。同时原来上个月缺货的日本独立...
Boomer.Host是一家比较新的国外主机商,虽然LEB自述 we’re now more than 2 year old,商家提供虚拟主机和VPS,其中VPS主机基于OpenVZ架构,数据中心为美国得克萨斯州休斯敦。目前,商家在LET发了两款特别促销套餐,年付最低3.5美元起,特别提醒:低价低配,且必须年付,请务必自行斟酌确定需求再入手。下面列出几款促销套餐的配置信息。CPU:1core内存:...
ZJI发布了9月份促销信息,针对香港华为云线路物理服务器华为一型提供立减300元优惠码,优惠后香港华为一型月付仅450元起。ZJI是原来Wordpress圈知名主机商家:维翔主机,成立于2011年,2018年9月更名为ZJI,提供中国香港、台湾、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册等业务,商家所选数据中心均为国内访问质量高的机房和线路,比如香港阿里云、华为...
delphi多线程为你推荐
isbackground什么叫做背景反应?background reaction旺旺群发手机旺旺怎么群发信息?建行手机网站怎么下载建行手机银行createfile失败惠普机看机提示create file fail 无法进桌面视频托管如何把视频上传到自己公司的网站上?求解···网络视频下载器那些视频下载器比较全而且好用?动态图片格式怎么将GIF动态图片的格式变成JPG 动态效果不变?网络安全密钥网络安全密钥和wifi密码有什么区别particular教程AE的particular的particle设置validdate怎样解决oracle报错is not a valid date and time
万网域名空间 备案域名出售 187邮箱 cdn服务器 服务器架设 谁的qq空间最好看 789电视 网站木马检测工具 adroit hkt 四核服务器 香港亚马逊 云营销系统 沈阳主机托管 免费的asp空间 linode支付宝 ebay注册 湖南idc 国外免费云空间 网站加速 更多