|
TASH_SCH_EXTERN int | schAllocateTaskPool (schTaskSch **pSch) |
| Allocate task scheduler object. It will make sure that for any version of the library, that the size of the internal structure are of correct size. More...
|
|
TASH_SCH_EXTERN int | schCreateTaskPool (schTaskSch *sch, int cores, unsigned int flag, unsigned int maxPackagesPool) |
| Initilize task scheduler internal data structure. More...
|
|
TASH_SCH_EXTERN int | schReleaseTaskSch (schTaskSch *sch) |
| Release all resources associated with the scheduler object. More...
|
|
TASH_SCH_EXTERN void | schSetInitCallBack (schTaskSch *sch, schUserCallBack callBack) |
| Set initialization callback that will be invoked when the scheduler starts. More...
|
|
TASH_SCH_EXTERN void | schSetDeInitCallBack (schTaskSch *sch, schUserCallBack callBack) |
| Set user deinitialize callback that will be invoked when the scheduler gets terminated. More...
|
|
TASH_SCH_EXTERN void | schSetSchUserData (schTaskSch *sch, const void *user) |
| Assign user data associated with the scheduler object. More...
|
|
TASH_SCH_EXTERN void | schSetPoolUserData (schTaskSch *sch, int index, const void *user) |
| Assign user data associated with the scheduler objects pools. More...
|
|
TASH_SCH_EXTERN void * | schGetPoolUserData (schTaskSch *sch, int index) |
| Get pool user data. More...
|
|
TASH_SCH_EXTERN schTaskPool * | schGetPool (schTaskSch *sch, int index) |
| Get scheduler pool by index. More...
|
|
TASH_SCH_EXTERN int | schRunTaskSch (schTaskSch *sch) |
|
TASH_SCH_EXTERN int | schStopTaskSch (schTaskSch *sch, long int timeout_nanoseconds) |
|
TASH_SCH_EXTERN int | schTerminateTaskSch (schTaskSch *sch) |
|
TASH_SCH_EXTERN int | schSubmitTask (schTaskSch *sch, schTaskPackage *package, schTaskPool *pPool) |
|
TASH_SCH_EXTERN int | schClearTask (schTaskSch *sch, schTaskPool *pool) |
|
TASH_SCH_EXTERN int | schClearAllTask (schTaskSch *sch) |
|
TASH_SCH_EXTERN int | schWaitTask (schTaskSch *sch) |
|
TASH_SCH_EXTERN int | schWaitTaskWait (schTaskSch *sch, long int wait_nanoseconds) |
|
TASH_SCH_EXTERN int | schPoolLock (schTaskPool *pool) |
|
TASH_SCH_EXTERN int | schPoolMutexUnLock (schTaskPool *pool) |
|
TASH_SCH_EXTERN schThread * | schCreateThread (int affinity, schFunc pfunc, void *userData) |
| Create new thread object with a custom callback entrypoint. More...
|
|
TASH_SCH_EXTERN int | schDeleteThread (schThread *thread) |
| Delete thread This will cause the system to release the thread resources. More...
|
|
TASH_SCH_EXTERN int | schWaitThread (schThread *thread, void **retval) |
|
TASH_SCH_EXTERN int | schSetThreadName (schThread *thread, const char *name) |
|
TASH_SCH_EXTERN schThread * | schCurrentThread (void) |
|
TASH_SCH_EXTERN int | schRaiseThreadSignal (schThread *thread, int signal) |
|
TASH_SCH_EXTERN schSignalSet * | schCreateSignal (void) |
|
TASH_SCH_EXTERN int | schDeleteSignal (schSignalSet *signal) |
|
TASH_SCH_EXTERN int | schBaseSignal (void) |
|
TASH_SCH_EXTERN int | schSignalWait (schSignalSet *sig) |
| Wait in till signal has been issued. More...
|
|
TASH_SCH_EXTERN int | schSignalWaitTimeOut (schSignalSet *sig, long int nanoseconds) |
|
TASH_SCH_EXTERN int | schSetSignalThreadMask (schSignalSet *set, int nr, const int *signals) |
|
TASH_SCH_EXTERN int | schCreateMutex (schMutex **mutex) |
|
TASH_SCH_EXTERN int | schCreateSpinLock (schSpinLock **spinlock) |
| Creates a spinlock synchronization primitive object. More...
|
|
TASH_SCH_EXTERN int | schCreateSemaphore (schSemaphore **pSemaphore) |
|
TASH_SCH_EXTERN int | schCreateBarrier (schBarrier **pBarrier) |
| Create Memory barrier. More...
|
|
TASH_SCH_EXTERN int | schInitBarrier (schBarrier *pBarrier, int count) |
|
TASH_SCH_EXTERN int | schDeleteBarrier (schBarrier *barrier) |
|
TASH_SCH_EXTERN int | schWaitBarrier (schBarrier *barrier) |
| Wait for the barrier to finish. More...
|
|
TASH_SCH_EXTERN int | schCreateConditional (schConditional **pCondVariable) |
|
TASH_SCH_EXTERN int | schDeleteConditional (schConditional *conditional) |
|
TASH_SCH_EXTERN int | schConditionalWait (schConditional *conditional, schMutex *mutex) |
|
TASH_SCH_EXTERN int | schConditionalSignal (schConditional *conditional) |
|
TASH_SCH_EXTERN int | schCreateRWLock (schRWLock **pRwLock) |
|
TASH_SCH_EXTERN int | schDeleteRWLock (schRWLock *rwLock) |
|
TASH_SCH_EXTERN int | schRWLockRead (schRWLock *rwLock) |
|
TASH_SCH_EXTERN int | schRWLockWrite (schRWLock *rwLock) |
|
TASH_SCH_EXTERN int | schRWLocUnLock (schRWLock *rwLock) |
|
TASH_SCH_EXTERN int | schDeleteMutex (schMutex *mutex) |
| Release resources associated with the mutex object. More...
|
|
TASH_SCH_EXTERN int | schDeleteSpinLock (schSpinLock *spinlock) |
| Release spinlock resources. More...
|
|
TASH_SCH_EXTERN int | schDeleteSemaphore (schSemaphore *pSemaphore) |
| Delete semaphore. More...
|
|
TASH_SCH_EXTERN int | schMutexLock (schMutex *mutexLock) |
| Lock mutex and wait initill it has been unlocked for the thread to use the mutex. More...
|
|
TASH_SCH_EXTERN int | schMutexTryLock (schMutex *mutex, long int timeout) |
| Attempt to lock the mutex. If the wait time exceeds the timeout it will return with the status of timeout. More...
|
|
TASH_SCH_EXTERN int | schMutexUnLock (schMutex *mutexLock) |
| Unlock mutex. More...
|
|
TASH_SCH_EXTERN int | schSemaphoreWait (schSemaphore *pSemaphore) |
| Wait for semaphore to be unlocked. More...
|
|
TASH_SCH_EXTERN int | schSemaphoreTryWait (schSemaphore *semaphore) |
|
TASH_SCH_EXTERN int | schSemaphoreTimedWait (schSemaphore *pSemaphore, long int timeout) |
|
TASH_SCH_EXTERN int | schSemaphorePost (schSemaphore *pSemaphore) |
|
TASH_SCH_EXTERN int | schSemaphoreValue (schSemaphore *pSemaphore, int *value) |
|
TASH_SCH_EXTERN int | schLockSpinLock (schSpinLock *spinlock) |
|
TASH_SCH_EXTERN int | schTryLockSpinLock (schSpinLock *spinLock) |
|
TASH_SCH_EXTERN int | schUnlockSpinLock (schSpinLock *spinlock) |
|
TASH_SCH_EXTERN const char * | schErrorMsg (int errMsg) |
|
Main libtasksch public API header