#include <pthread.h>
Go to the source code of this file.
Functions | |
int | dce_pthread_cancel (pthread_t thread) |
int | dce_pthread_cond_broadcast (pthread_cond_t *cond) |
int | dce_pthread_cond_destroy (pthread_cond_t *cond) |
int | dce_pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *attr) |
int | dce_pthread_cond_signal (pthread_cond_t *cond) |
int | dce_pthread_cond_timedwait (pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime) |
int | dce_pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex) |
int | dce_pthread_condattr_destroy (pthread_condattr_t *attr) |
int | dce_pthread_condattr_init (pthread_condattr_t *attr) |
int | dce_pthread_create (pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg) |
int | dce_pthread_detach (pthread_t thread) |
void | dce_pthread_exit (void *arg) |
void * | dce_pthread_getspecific (pthread_key_t key) |
int | dce_pthread_join (pthread_t thread, void **value_ptr) |
int | dce_pthread_key_create (pthread_key_t *key, void(*destructor)(void *)) |
int | dce_pthread_key_delete (pthread_key_t key) |
int | dce_pthread_mutex_destroy (pthread_mutex_t *mutex) |
int | dce_pthread_mutex_init (pthread_mutex_t *mutex, const pthread_mutexattr_t *attr) |
int | dce_pthread_mutex_lock (pthread_mutex_t *mutex) |
int | dce_pthread_mutex_trylock (pthread_mutex_t *mutex) |
int | dce_pthread_mutex_unlock (pthread_mutex_t *mutex) |
int | dce_pthread_mutexattr_destroy (pthread_mutexattr_t *attr) |
int | dce_pthread_mutexattr_init (pthread_mutexattr_t *attr) |
int | dce_pthread_mutexattr_settype (pthread_mutexattr_t *attr, int kind) |
int | dce_pthread_once (pthread_once_t *once_control, void(*init_routine)(void)) |
pthread_t | dce_pthread_self (void) |
int | dce_pthread_setspecific (pthread_key_t key, const void *value) |
int dce_pthread_cancel | ( | pthread_t | thread | ) |
Definition at line 247 of file dce-pthread.cc.
int dce_pthread_cond_broadcast | ( | pthread_cond_t * | cond | ) |
Definition at line 114 of file dce-pthread-cond.cc.
References ns3::Current(), ns3::Process::manager, ns3::Thread::process, SearchCondition(), ns3::UtilsGetNodeId(), ns3::Condition::waiting, and ns3::DceManager::Wakeup().
int dce_pthread_cond_destroy | ( | pthread_cond_t * | cond | ) |
Definition at line 86 of file dce-pthread-cond.cc.
References CidToCond(), ns3::Process::conditions, ns3::Current(), ns3::Thread::process, SearchCondition(), and ns3::UtilsGetNodeId().
int dce_pthread_cond_init | ( | pthread_cond_t * | cond, |
const pthread_condattr_t * | attr | ||
) |
Definition at line 72 of file dce-pthread-cond.cc.
References ns3::Current(), PthreadCondInitStatic(), and ns3::UtilsGetNodeId().
int dce_pthread_cond_signal | ( | pthread_cond_t * | cond | ) |
Definition at line 134 of file dce-pthread-cond.cc.
References ns3::Current(), ns3::Process::manager, ns3::Thread::process, SearchCondition(), ns3::UtilsGetNodeId(), ns3::Condition::waiting, and ns3::DceManager::Wakeup().
int dce_pthread_cond_timedwait | ( | pthread_cond_t * | cond, |
pthread_mutex_t * | mutex, | ||
const struct timespec * | abstime | ||
) |
Definition at line 153 of file dce-pthread-cond.cc.
References ns3::Current(), dce_pthread_mutex_lock(), dce_pthread_mutex_unlock(), ns3::Process::manager, ns3::Thread::process, SearchCondition(), ns3::UtilsGetNodeId(), ns3::UtilsTimespecToTime(), ns3::UtilsTimeToSimulationTime(), ns3::DceManager::Wait(), and ns3::Condition::waiting.
int dce_pthread_cond_wait | ( | pthread_cond_t * | cond, |
pthread_mutex_t * | mutex | ||
) |
Definition at line 180 of file dce-pthread-cond.cc.
References ns3::Current(), dce_pthread_mutex_lock(), dce_pthread_mutex_unlock(), ns3::Process::manager, ns3::Thread::process, SearchCondition(), ns3::UtilsGetNodeId(), ns3::DceManager::Wait(), and ns3::Condition::waiting.
int dce_pthread_condattr_destroy | ( | pthread_condattr_t * | attr | ) |
Definition at line 204 of file dce-pthread-cond.cc.
int dce_pthread_condattr_init | ( | pthread_condattr_t * | attr | ) |
Definition at line 200 of file dce-pthread-cond.cc.
int dce_pthread_create | ( | pthread_t * | thread, |
const pthread_attr_t * | attr, | ||
void *(*)(void *) | start_routine, | ||
void * | arg | ||
) |
Definition at line 127 of file dce-pthread.cc.
References PthreadStartContext::arg, ns3::DceManager::CreateThread(), ns3::Current(), ns3::TaskManager::Current(), ns3::TaskManager::GetStackSize(), ns3::Process::manager, ns3::Process::pid, PidTidToPthread(), ns3::Thread::process, pthread_do_start(), PthreadTaskSwitch(), ns3::Task::SetContext(), ns3::Task::SetSwitchNotifier(), ns3::TaskManager::Start(), PthreadStartContext::start_routine, ns3::Thread::task, ns3::Process::threads, ns3::Thread::tid, ns3::UtilsGetNodeId(), and ns3::TaskManager::Yield().
int dce_pthread_detach | ( | pthread_t | thread | ) |
Definition at line 222 of file dce-pthread.cc.
References ns3::Current(), ns3::Thread::isDetached, ns3::Thread::joinWaiter, ns3::Process::manager, ns3::Thread::process, PthreadToPid(), PthreadToTid(), ns3::DceManager::SearchThread(), and ns3::UtilsGetNodeId().
void dce_pthread_exit | ( | void * | arg | ) |
Definition at line 149 of file dce-pthread.cc.
References PthreadStartContext::arg, CleanupPthreadKeys(), ns3::Current(), ns3::TaskManager::Current(), dce_exit(), ns3::DceManager::DeleteThread(), ns3::TaskManager::Exit(), ns3::Thread::exitValue, ns3::Thread::hasExitValue, ns3::Thread::isDetached, ns3::Thread::joinWaiter, ns3::Process::manager, ns3::Thread::process, ns3::Thread::task, ns3::Process::threads, ns3::UtilsGetNodeId(), and ns3::DceManager::Wakeup().
Referenced by pthread_do_start().
void* dce_pthread_getspecific | ( | pthread_key_t | key | ) |
Definition at line 291 of file dce-pthread.cc.
References ns3::Current(), ns3::Thread::keyValues, and ns3::UtilsGetNodeId().
int dce_pthread_join | ( | pthread_t | thread, |
void ** | value_ptr | ||
) |
Definition at line 181 of file dce-pthread.cc.
References ns3::Current(), ns3::DceManager::DeleteThread(), ns3::Thread::exitValue, ns3::Thread::hasExitValue, ns3::Thread::isDetached, ns3::Thread::joinWaiter, ns3::Process::manager, ns3::Process::pid, ns3::Thread::process, PthreadToPid(), PthreadToTid(), ns3::DceManager::SearchThread(), ns3::Thread::tid, ns3::UtilsGetNodeId(), and ns3::DceManager::Wait().
int dce_pthread_key_create | ( | pthread_key_t * | key, |
void(*)(void *) | destructor | ||
) |
Definition at line 323 of file dce-pthread.cc.
References ns3::Current(), ns3::ThreadKeyValue::destructor, IsKeyValid(), ns3::ThreadKeyValue::key, ns3::Thread::keyValues, ns3::Thread::process, ns3::Process::threads, ns3::UtilsGetNodeId(), and ns3::ThreadKeyValue::value.
int dce_pthread_key_delete | ( | pthread_key_t | key | ) |
Definition at line 353 of file dce-pthread.cc.
References ns3::Current(), IsKeyValid(), ns3::Thread::keyValues, ns3::Thread::process, ns3::Process::threads, and ns3::UtilsGetNodeId().
int dce_pthread_mutex_destroy | ( | pthread_mutex_t * | mutex | ) |
Definition at line 137 of file dce-pthread-mutex.cc.
References ns3::Mutex::count, ns3::Mutex::current, ns3::Current(), MidToMutex(), ns3::Process::mutexes, ns3::Thread::process, SearchMutex(), ns3::UtilsGetNodeId(), and ns3::Mutex::waiting.
int dce_pthread_mutex_init | ( | pthread_mutex_t * | mutex, |
const pthread_mutexattr_t * | attr | ||
) |
Definition at line 90 of file dce-pthread-mutex.cc.
References ns3::Mutex::count, ns3::Mutex::current, ns3::Current(), ns3::Mutex::mid, MidToMutex(), ns3::Process::mutexes, ns3::Process::nextMid, ns3::Mutex::NORMAL, ns3::Thread::process, ns3::Mutex::RECURSIVE, PthreadMutexAttr::type, ns3::Mutex::type, ns3::UtilsGetNodeId(), and ns3::Mutex::waiting.
int dce_pthread_mutex_lock | ( | pthread_mutex_t * | mutex | ) |
Definition at line 173 of file dce-pthread-mutex.cc.
References ns3::Mutex::count, ns3::Mutex::current, ns3::Current(), ns3::Process::manager, ns3::Mutex::NORMAL, ns3::Thread::process, ns3::Mutex::RECURSIVE, SearchMutex(), ns3::Mutex::type, ns3::UtilsGetNodeId(), ns3::DceManager::Wait(), and ns3::Mutex::waiting.
Referenced by dce_pthread_cond_timedwait(), and dce_pthread_cond_wait().
int dce_pthread_mutex_trylock | ( | pthread_mutex_t * | mutex | ) |
Definition at line 211 of file dce-pthread-mutex.cc.
References ns3::Mutex::count, ns3::Mutex::current, ns3::Current(), ns3::Mutex::NORMAL, ns3::Mutex::RECURSIVE, SearchMutex(), ns3::Mutex::type, and ns3::UtilsGetNodeId().
int dce_pthread_mutex_unlock | ( | pthread_mutex_t * | mutex | ) |
Definition at line 261 of file dce-pthread-mutex.cc.
References ns3::Mutex::count, ns3::Mutex::current, ns3::Current(), ns3::Process::manager, ns3::Thread::process, SearchMutex(), ns3::UtilsGetNodeId(), ns3::Mutex::waiting, ns3::DceManager::Wakeup(), and ns3::DceManager::Yield().
Referenced by dce_pthread_cond_timedwait(), and dce_pthread_cond_wait().
int dce_pthread_mutexattr_destroy | ( | pthread_mutexattr_t * | attr | ) |
Definition at line 315 of file dce-pthread-mutex.cc.
References ns3::Current(), and ns3::UtilsGetNodeId().
int dce_pthread_mutexattr_init | ( | pthread_mutexattr_t * | attr | ) |
Definition at line 302 of file dce-pthread-mutex.cc.
References ns3::Current(), PthreadMutexAttr::type, and ns3::UtilsGetNodeId().
int dce_pthread_mutexattr_settype | ( | pthread_mutexattr_t * | attr, |
int | kind | ||
) |
Definition at line 325 of file dce-pthread-mutex.cc.
References ns3::Current(), PthreadMutexAttr::type, and ns3::UtilsGetNodeId().
int dce_pthread_once | ( | pthread_once_t * | once_control, |
void(*)(void) | init_routine | ||
) |
Definition at line 260 of file dce-pthread.cc.
References ns3::Current(), and ns3::UtilsGetNodeId().
pthread_t dce_pthread_self | ( | void | ) |
Definition at line 252 of file dce-pthread.cc.
References ns3::Current(), ns3::Process::pid, PidTidToPthread(), ns3::Thread::process, ns3::Thread::tid, and ns3::UtilsGetNodeId().
int dce_pthread_setspecific | ( | pthread_key_t | key, |
const void * | value | ||
) |
Definition at line 306 of file dce-pthread.cc.
References ns3::Current(), ns3::Thread::keyValues, and ns3::UtilsGetNodeId().