多线程的问题 大家帮我看看错在哪里?

BCBX BCBX 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
unit Unit2;
interface
uses
Classes,StdCtrls;

type
TFuckYou = class(TThread)
constructor Create( var Memo1:TMemo;FuckStanm:String);
private

protected
procedure Execute; override;
procedure WriteFuckYou();
public
M_Memo:^TMemo;
M_FuckSay:String;
end;

implementation
constructor TFuckYou.Create( var Memo1:TMemo; FuckStanm:string);
begin
M_Memo:=@Memo1; //AV 错误
M_FuckSay:=FuckStanm;
Suspend();
FreeOnTerminate:=True;

end;

procedure TFuckYou.WriteFuckYou();
begin
M_Memo.Lines.Add(M_FuckSay);
end;

procedure TFuckYou.Execute;
begin
Synchronize(WriteFuckYou);
end;
end.


unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Unit2;
type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
public
FuckA,FuckB:TFuckYou;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
FuckA.Create(Memo1,'Fuck Your Mother');
FuckB.Create(Memo1,'Fuck Your!');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
FuckA.Resume();
FuckB.Resume();
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
FuckA.Terminate();
FuckB.Terminate();
end;
end.
得到了正确答案分会加上去的. 我这样是避免浪费
...全文
评论 20
收藏 已收藏
分享
返回顶部