Repository URL to install this package:
|
Version:
3.0.0 ▾
|
{$IFDEF OGC_INTERFACE}
const
LWP_CLOSED = - 1;
LWP_SUCCESSFUL = 0;
LWP_ALREADY_SUSPENDED = 1;
LWP_NOT_SUSPENDED = 2;
LWP_PRIO_IDLE = 0;
LWP_PRIO_HIGHEST = 127;
LWP_THREAD_NULL = $ffffffff;
LWP_TQUEUE_NULL = $ffffffff;
type
lwp_t = cuint32;
Plwp_t = ^lwp_t;
lwpq_t = cuint32;
Plwpq_t = ^lwpq_t;
TAuxCallback = function(par0: pointer): pointer; cdecl;
function LWP_CreateThread(thethread: Plwp_t; entry: TAuxCallback;
arg, stackbase: pointer; stack_size: cuint32; prio: cuint8): cint32; cdecl; external;
function LWP_SuspendThread(thethread: lwp_t): cint32; cdecl; external;
function LWP_ResumeThread(thethread: lwp_t): cint32; cdecl; external;
function LWP_ThreadIsSuspended(thethread: lwp_t): cbool; cdecl; external;
function LWP_GetSelf: lwp_t; cdecl; external;
procedure LWP_SetThreadPriority(thethread: lwp_t; prio: cuint32); cdecl; external;
procedure LWP_YieldThread; cdecl; external;
procedure LWP_Reschedule(prio: cuint32); cdecl; external;
function LWP_JoinThread(thethread: lwp_t; value_ptr: Ppointer): cint32; cdecl; external;
function LWP_InitQueue(thequeue: Plwpq_t): cint32; cdecl; external;
procedure LWP_CloseQueue(thequeue: lwpq_t); cdecl; external;
function LWP_ThreadSleep(thequeue: lwpq_t): cint32; cdecl; external;
procedure LWP_ThreadSignal(thequeue: lwpq_t); cdecl; external;
procedure LWP_ThreadBroadcast(thequeue: lwpq_t); cdecl; external;
{$ENDIF OGC_INTERFACE}