Idris2Doc : System.Posix.Pthreads.Prim

System.Posix.Pthreads.Prim

(source)

Reexports

importpublic Data.C.Ptr
importpublic System.Posix.Errno
importpublic System.Posix.Pthreads.Struct
importpublic System.Posix.Pthreads.Types

Definitions

pthreadSelf : PrimIOPthreadT
  Returns the thread ID of the current thread.

Totality: total
Visibility: export
pthreadJoin : PthreadT->EPrim ()
  Blocks the current thread and waits for the given thread to terminate.

Totality: total
Visibility: export
mkmutex : MutexType->EPrimMutexT
  Allocates and initializes a new mutex of the given type.

This must be freed with `destroyMutex`.

Totality: total
Visibility: export
destroyMutex : MutexT->PrimIO ()
  Destroys a mutex and frees the memory allocated for it.

Totality: total
Visibility: export
lockMutex : MutexT->EPrim ()
  Tries to lock the given mutex, blocking the calling thread
in case it is already locked.

Totality: total
Visibility: export
timedlockMutex : MutexT->ClockDuration->EPrimBool
  Like `lockMutex` but returns a boolean with `False` indicating
that the lock timed out

Totality: total
Visibility: export
trylockMutex : MutexT->EPrimBool
  Like `lockMutex` but returns `False` in case the mutex is
already locked.

Totality: total
Visibility: export
unlockMutex : MutexT->EPrim ()
  Unlocks the given mutex.

This is an error if the calling thread is not the one holding
the mutex's lock.

Totality: total
Visibility: export
mkcond : EPrimCondT
  Allocates and initializes a new condition variable.

This must be freed with `destroyCond`.

Totality: total
Visibility: export
destroyCond : CondT->PrimIO ()
  Destroys a condition variable and frees the memory allocated for it.

Totality: total
Visibility: export
condSignal : CondT->EPrim ()
  Signals the given `pthread_cond_t`.

If several threads are waiting on the condition, it is unspecified
which of them will be signalled. We are only guaranteed that at least
of them will be woken up.

Totality: total
Visibility: export
condBroadcast : CondT->EPrim ()
  Broadcasts the given `pthread_cond_t`.

This will wake up all threads waiting on the given condition.

Totality: total
Visibility: export
condWait : CondT->MutexT->EPrim ()
  Blocks the given thread and waits for the given condition to
be signalled.

Note: The mutex must have been locked by the calling thread. The
lock is automatically released upon calling `condWait`, and when
the thread is woken up, the mutex will automatically be locked again.

Totality: total
Visibility: export
condTimedwait : CondT->MutexT->ClockUTC->EPrimBool
  Like `condWait` but will return `False` in case the operation timed out.

Totality: total
Visibility: export
pthreadCancel : PthreadT->EPrim ()
  Sends a cancelation request to the given thread.

Totality: total
Visibility: export
pthreadTestCancel : PrimIO ()
  Tests for thread cancelation in the absence of other cancelation
points.
setCancelType : CancelType->PrimIOCancelType
  Sets the current thread's cancel type returning the previous cancel type.

Totality: total
Visibility: export
setCancelState : CancelState->PrimIOCancelState
  Sets the current thread's cancel state returning the previous cancel state.

Totality: total
Visibility: export
pthreadSigmask_ : How->SigsetT->PrimIOSigsetT
  Adjust the thread's signal mask according to the given `How`
and signal set.

Note: This allocates a new `sigset_t` pointer and returns the
previously set signal mask. Client code is responsible to
free the memory for this once it is no longer used.
See also `pthreadSigmask'` for a version that does not return
the previous signal mask.

Totality: total
Visibility: export
pthreadSiggetmask : PrimIOSigsetT
  Returns the current signal mask of the thread.

Note: This allocates a new `sigset_t` pointer and returns the
previously set signal mask. Client code is responsible to
free the memory for this once it is no longer used.

Totality: total
Visibility: export
pthreadKill : PthreadT->Signal->EPrim ()
  Sends the given signal to the given thread.

Totality: total
Visibility: export
pthreadSigmask : How->ListSignal->EPrim ()
  Like `pthreadSigmask_` but does not allocate a pointer for the
previous `sigset_t`.

Totality: total
Visibility: export