Вот и решил я проблему с сборкой среды под лин. Все работает, но очередная проблема завела меня в тупик...
У меня консольное приложение.
- Код: Выделить всё
program ReAnimate;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, SysUtils, CustApp, Unit2
{ you can add units after this };
type
{ TMyApplication }
TMyApplication = class(TCustomApplication)
protected
procedure DoRun; override;
public
constructor Create(TheOwner: TComponent); override;
destructor Destroy; override;
end;
{ TMyApplication }
procedure TMyApplication.DoRun;
var
ErrorMsg: String;
begin
{ add your program here }
// stop program loop
Terminate;
end;
constructor TMyApplication.Create(TheOwner: TComponent);
begin
inherited Create(TheOwner);
end;
destructor TMyApplication.Destroy;
begin
inherited Destroy;
end;
var
Application: TMyApplication;
ska : TMyThread;
{$R *.res}
begin
Application:=TMyApplication.Create(nil);
Application.Title:='ReAnimate';
Application.Run;
ska:=TMyThread.Create(true);
ska.Resume;
readln;
Application.Free
end.
Сам поток
- Код: Выделить всё
unit Unit2;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils;
Type
TMyThread = class(TThread)
private
{prv}
protected
procedure Execute; override;
public
Constructor Create(CreateSuspended : boolean);
end;
implementation
constructor TMyThread.Create(CreateSuspended : boolean);
begin
FreeOnTerminate := True;
// inherited Create(CreateSuspended);
end;
procedure TMyThread.Execute;
begin
end;
end.
// inherited Create(CreateSuspended); если это разкоментировать то после создания потока приложение сразу закроется..
Этот поток в упор не хочет работать =( Что бы я не написал в Execute это не выполняется..
что я сделал не так ?
http://wiki.lazarus.freepascal.org/Mult ... utorial/ru
инфу брал от суда...