帮我看段代码是哪错了,我新手,程序可以编译,但是运行时候就报错,是内存方面的错误unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
  athread=class(TThread)
  private
  public
    procedure buttonclick;
    procedure execute;override;
    constructor create(CreateSuspended: Boolean);
  end;
var
  Form1: TForm1;implementation{$R *.dfm}
procedure athread.execute;
begin
  showmessage('aaa');
  Synchronize(buttonclick);
end;
procedure athread.buttonclick;
begin
 form1.Button1.Click;
end;
constructor athread.create(CreateSuspended: Boolean);
begin
inherited Create(CreateSuspended); ;end;procedure TForm1.Button1Click(Sender: TObject);
begin
if strtoint(copy(edit1.text,length(edit1.text)-1,1)) mod 2 <>0 then
    edit1.text:=inttostr(strtoint(edit1.text)+1);
end;procedure TForm1.Button2Click(Sender: TObject);
var
a:athread;
begin
    a.create(true);
    a.Resume;
end;end.