mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-08 19:28:13 +02:00
39 lines
516 B
ObjectPascal
39 lines
516 B
ObjectPascal
{ %SKIPTARGET=$nothread }
|
|
program tclass16;
|
|
|
|
{$mode objfpc}
|
|
|
|
{$ifdef unix}
|
|
uses
|
|
cthreads;
|
|
{$endif}
|
|
|
|
type
|
|
TTest = class
|
|
public class threadvar
|
|
Test: LongInt;
|
|
end;
|
|
|
|
function TestFunc(aData: Pointer): PtrInt;
|
|
var
|
|
e: PRTLEvent;
|
|
begin
|
|
e := PRTLEvent(aData);
|
|
TTest.Test := 42;
|
|
RTLeventSetEvent(e);
|
|
Result := 0;
|
|
end;
|
|
|
|
var
|
|
e: PRTLEvent;
|
|
begin
|
|
TTest.Test := 21;
|
|
e := RTLEventCreate;
|
|
BeginThread(@TestFunc, e);
|
|
RTLeventWaitFor(e);
|
|
if TTest.Test <> 21 then
|
|
Halt(1);
|
|
Writeln('Ok');
|
|
end.
|
|
|