FPPS4/kernel/libthr/pthread.pas

62 lines
1.4 KiB
Plaintext

unit pthread;
{$mode ObjFPC}{$H+}
{$CALLING SysV_ABI_CDecl}
interface
uses
signal;
const
PTHREAD_DESTRUCTOR_ITERATIONS=4;
PTHREAD_KEYS_MAX =256;
PTHREAD_STACK_MIN =MINSIGSTKSZ;
PTHREAD_THREADS_MAX =High(QWORD);
PTHREAD_BARRIER_SERIAL_THREAD=-1;
PTHREAD_DETACHED =$1;
PTHREAD_SCOPE_SYSTEM =$2;
PTHREAD_INHERIT_SCHED=$4;
PTHREAD_NOFLOAT =$8;
PTHREAD_CREATE_DETACHED=PTHREAD_DETACHED;
PTHREAD_CREATE_JOINABLE=0;
PTHREAD_SCOPE_PROCESS =0;
PTHREAD_EXPLICIT_SCHED =0;
PTHREAD_PROCESS_PRIVATE=0;
PTHREAD_PROCESS_SHARED =1;
PTHREAD_CANCEL_ENABLE =0;
PTHREAD_CANCEL_DISABLE =1;
PTHREAD_CANCEL_DEFERRED =0;
PTHREAD_CANCEL_ASYNCHRONOUS=2;
PTHREAD_CANCELED =Pointer(1);
PTHREAD_NEEDS_INIT=0;
PTHREAD_DONE_INIT =1;
//PTHREAD_ONCE_INIT { PTHREAD_NEEDS_INIT, NULL }
PTHREAD_MUTEX_INITIALIZER =nil;
PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP=Pointer(1);
PTHREAD_COND_INITIALIZER =nil;
PTHREAD_RWLOCK_INITIALIZER =nil;
PTHREAD_PRIO_NONE =0;
PTHREAD_PRIO_INHERIT=1;
PTHREAD_PRIO_PROTECT=2;
PTHREAD_MUTEX_ERRORCHECK = 1; // Default POSIX mutex
PTHREAD_MUTEX_RECURSIVE = 2; // Recursive mutex
PTHREAD_MUTEX_NORMAL = 3; // No error checking
PTHREAD_MUTEX_ADAPTIVE = 4; // Adaptive mutex, spins briefly before blocking on lock
PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_ERRORCHECK;
implementation
end.