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来弄吧.
方便控制一些
快云科技: 12.12特惠推出全场VPS 7折购 续费同价 年付仅不到五折公司介绍:快云科技是成立于2020年的新进主机商,持有IDC/ICP等证件资质齐全主营产品有:香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机产品特色:全配置均20M带宽,架构采用KVM虚拟化技术,全盘SSD硬盘,RAID10阵列, 国内回程三网CN2 GIA,平均延迟50ms以下。...
哪里购买香港云服务器便宜?众所周知,国内购买云服务器大多数用户会选择阿里云或腾讯云,但是阿里云香港云服务器不仅平时没有优惠,就连双十一、618、开年采购节这些活动也很少给出优惠。那么,腾讯云虽然海外云有优惠活动,但仅限新用户,购买过腾讯云服务器的用户就不会有优惠了。那么,我们如果想买香港云服务器,怎么样购买香港云服务器便宜和优惠呢?下面,云服务器网(yuntue.com)小编就介绍一下!我们都知道...
2021年6月底,raksmart开发出来的新产品“cloud-云服务器”正式上线对外售卖,当前只有美国硅谷机房(或许以后会有其他数据中心加入)可供选择。或许你会问raksmart云服务器怎么样啊、raksm云服务器好不好、网络速度快不好之类的废话(不实测的话),本着主机测评趟雷、大家受益的原则,先开一个给大家测评一下!官方网站:https://www.raksmart.com云服务器的说明:底层...
delphi多线程为你推荐
snake模型什么是S-L头模型?qq管家官网在qq电脑管家官网有个可以登录qq的。登录上了可以加速么?网络安全密钥网络安全密钥一般是什么za是哪个国家的ci是在哪个国家产生的?哪个国家开始流行的acceptchangesaltium designer 6.0如何给元件重新编号在线操作系统TOMOS在线操作系统是什么?飞信发信息要钱吗用飞信发短信要钱吗??怎么使用飞信??急flv转avi为什么将flv格式转换成avi格式就不太清楚啦卡发短信移动卡怎么样发短信查自己的号码mpeg4格式MPEG4的视频格式是什么?
主机评测 bluehost 美国主机代购 免费ftp空间 iisphpmysql 嘟牛 我爱水煮鱼 域名转接 速度云 1g空间 华为云建站 免费php空间 双11促销 香港ip 空间排行榜 免费的加速器 globalsign stealthy dns是什么意思 国内免备案空间 更多