|
DTS Application Library
0.2.3
Application library containing referenced objects and interfaces to common libraries
|
Functions for starting and managing threads. More...
#include <pthread.h>#include <signal.h>#include <unistd.h>#include <stdint.h>#include "include/dtsapp.h"Go to the source code of this file.
Data Structures | |
| struct | thread_pvt |
| thread struct used to create threads data needs to be first element More... | |
| struct | threadcontainer |
| Global threads data. More... | |
Enumerations | |
| enum | threadopt { TL_THREAD_NONE = 1 << 0, TL_THREAD_RUN = 1 << 1, TL_THREAD_DONE = 1 << 2, TL_THREAD_JOIN = 1 << 3, TL_THREAD_STOP = 1 << 4, TL_THREAD_CAN_CANCEL = 1 << 16, TL_THREAD_JOINABLE = 1 << 17, TL_THREAD_RETURN = 1 << 18 } |
| Thread status a thread can be disabled by unsetting TL_THREAD_RUN. More... | |
Functions | |
| int | framework_threadok () |
| let threads check there status. More... | |
| int | startthreads (void) |
| Initialise the threadlist and start manager thread. More... | |
| void | stopthreads (int join) |
| Signal manager to stop and cancel all running threads. More... | |
| struct thread_pvt * | framework_mkthread (threadfunc func, threadcleanup cleanup, threadsighandler sig_handler, void *data, int flags) |
| create a thread result must be unreferenced More... | |
| void | jointhreads (void) |
| Join the manager thread. More... | |
| int | thread_signal (int sig) |
| Handle signal if its for me. More... | |
Variables | |
| struct threadcontainer * | threads = NULL |
| Thread control data. More... | |
| int | thread_can_start = 1 |
| Automatically start manager thread. More... | |
Functions for starting and managing threads.
The thread interface consists of a management thread managing a hashed bucket list of threads running optional clean up when done.
Definition in file thread.c.