Macros | Functions
Thread.c File Reference

Threading related functions. More...

#include "Thread.h"
#include "Log.h"
#include "StackTrace.h"
#include <errno.h>
#include <unistd.h>
#include <sys/time.h>
#include <fcntl.h>
#include <stdio.h>
#include <sys/stat.h>
#include <limits.h>
#include <stdlib.h>
#include "OsWrapper.h"
Include dependency graph for Thread.c:

Go to the source code of this file.

Macros

#define USE_TRYWAIT
 

Functions

int Thread_check_sem (sem_type sem)
 
cond_type Thread_create_cond (int *rc)
 
mutex_type Thread_create_mutex (int *rc)
 
sem_type Thread_create_sem (int *rc)
 
int Thread_destroy_cond (cond_type condvar)
 
int Thread_destroy_mutex (mutex_type mutex)
 
int Thread_destroy_sem (sem_type sem)
 
thread_id_type Thread_getid (void)
 
int Thread_lock_mutex (mutex_type mutex)
 
int Thread_post_sem (sem_type sem)
 
int Thread_signal_cond (cond_type condvar)
 
thread_type Thread_start (thread_fn fn, void *parameter)
 
int Thread_unlock_mutex (mutex_type mutex)
 
int Thread_wait_cond (cond_type condvar, int timeout)
 
int Thread_wait_sem (sem_type sem, int timeout)
 

Detailed Description

Threading related functions.

Used to create platform independent threading functions

Definition in file Thread.c.

Macro Definition Documentation

#define USE_TRYWAIT

Function Documentation

int Thread_check_sem ( sem_type  sem)

Check to see if a semaphore has been posted, without waiting The semaphore will be unchanged, if the return value is false. The semaphore will have been decremented, if the return value is true.

Parameters
semthe semaphore
Returns
0 (false) or 1 (true)

Definition at line 292 of file Thread.c.

cond_type Thread_create_cond ( int *  rc)

Create a new condition variable

Returns
the condition variable struct

Definition at line 365 of file Thread.c.

mutex_type Thread_create_mutex ( int *  rc)

Create a new mutex

Returns
the new mutex

Definition at line 88 of file Thread.c.

sem_type Thread_create_sem ( int *  rc)

Create a new semaphore

Returns
the new condition variable

Definition at line 190 of file Thread.c.

int Thread_destroy_cond ( cond_type  condvar)

Destroy a condition variable

Returns
completion code

Definition at line 444 of file Thread.c.

int Thread_destroy_mutex ( mutex_type  mutex)

Destroy a mutex which has already been created

Parameters
mutexthe mutex

Definition at line 156 of file Thread.c.

int Thread_destroy_sem ( sem_type  sem)

Destroy a semaphore which has already been created

Parameters
semthe semaphore

Definition at line 341 of file Thread.c.

thread_id_type Thread_getid ( void  )

Get the thread id of the thread from which this function is called

Returns
thread id, type varying according to OS

Definition at line 176 of file Thread.c.

int Thread_lock_mutex ( mutex_type  mutex)

Lock a mutex which has alrea

Returns
completion code, 0 is success

Definition at line 112 of file Thread.c.

int Thread_post_sem ( sem_type  sem)

Post a semaphore

Parameters
semthe semaphore
Returns
0 on success

Definition at line 313 of file Thread.c.

int Thread_signal_cond ( cond_type  condvar)

Signal a condition variable

Returns
completion code

Definition at line 399 of file Thread.c.

thread_type Thread_start ( thread_fn  fn,
void *  parameter 
)

Start a new thread

Parameters
fnthe function to run, must be of the correct signature
parameterpointer to the function parameter, can be NULL
Returns
the new thread

Definition at line 60 of file Thread.c.

int Thread_unlock_mutex ( mutex_type  mutex)

Unlock a mutex which has already been locked

Parameters
mutexthe mutex
Returns
completion code, 0 is success

Definition at line 133 of file Thread.c.

int Thread_wait_cond ( cond_type  condvar,
int  timeout 
)

Wait with a timeout (seconds) for condition variable

Returns
0 for success, ETIMEDOUT otherwise

Definition at line 416 of file Thread.c.

int Thread_wait_sem ( sem_type  sem,
int  timeout 
)

Wait for a semaphore to be posted, or timeout.

Parameters
semthe semaphore
timeoutthe maximum time to wait, in milliseconds
Returns
completion code

Definition at line 230 of file Thread.c.



plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 04:02:49