Go to the source code of this file.
Data Structures |
class | nux::NThreadSafeCounter |
class | nux::NCriticalSection |
class | nux::NScopeLock |
| Scope Lock class. More...
|
class | nux::NThreadLocalStorage |
class | nux::NThread |
class | nux::NThread::NThreadContext |
Namespaces |
namespace | nux |
Defines |
#define | inlDeclareThreadLocalStorage(type, index, name) |
#define | inlRegisterThreadLocalIndex(index, name, shutdownCallback) |
#define | inlGetThreadLocalStorage(name) GetTLS_##name() |
#define | inlSetThreadLocalStorage(name, value) SetTLS_##name(value) |
#define | nuxAssertInsideThread(threadtype) ((void) 0) |
#define | nuxAssertInsideThread2(threadtype1, threadtype2) ((void) 0) |
#define | nuxAssertNotInsideThread(threadtype) ((void) 0) |
Typedefs |
typedef void *(* | nux::ThreadRoutineFunc )(void *) |
Enumerations |
enum | nux::ThreadState {
nux::THREADINIT,
nux::THREADRUNNING,
nux::THREADSUSPENDED,
nux::THREADSTOP,
nux::THREAD_START_ERROR,
nux::THREAD_STOP_ERROR,
nux::THREAD_SUSPEND_ERROR,
nux::THREAD_RESUME_ERROR
} |
Define Documentation
#define inlDeclareThreadLocalStorage |
( |
|
type, |
|
|
|
index, |
|
|
|
name |
|
) |
| |
Value:struct ThreadLocalStorageDef##name { enum Const { Index = index}; };\
inline type GetTLS_##name() { return nux::NThreadLocalStorage::GetData<type>(ThreadLocalStorageDef##name::Index); }\
inline void SetTLS_##name(type value) { nux::NThreadLocalStorage::SetData<type>(ThreadLocalStorageDef##name::Index, value); }
#define inlGetThreadLocalStorage |
( |
|
name | ) |
GetTLS_##name() |
#define inlRegisterThreadLocalIndex |
( |
|
index, |
|
|
|
name, |
|
|
|
shutdownCallback |
|
) |
| |
#define inlSetThreadLocalStorage |
( |
|
name, |
|
|
|
value |
|
) |
| SetTLS_##name(value) |
#define nuxAssertInsideThread |
( |
|
threadtype | ) |
((void) 0) |
#define nuxAssertInsideThread2 |
( |
|
threadtype1, |
|
|
|
threadtype2 |
|
) |
| ((void) 0) |
#define nuxAssertNotInsideThread |
( |
|
threadtype | ) |
((void) 0) |