aboutsummaryrefslogtreecommitdiffstats
path: root/src/thread (follow)
Commit message (Collapse)AuthorAgeFilesLines
* thread/Id: drop "::" prefix before pthread function namesMax Kellermann2014-12-081-2/+2
| | | | | | The "::" to explicitly refer to the global namespace appeared like a good idea in C++, but it breaks with C libraries that implement standard functions using macros (e.g. musl).
* thread/Posix{Cond,Mutex}: don't ues PTHREAD_*_INITIALIZER on NetBSDMax Kellermann2014-09-132-0/+28
| | | | | | | | | | On NetBSD, PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER are not compatible with C++11 "constexpr" (see Mantis ticket 0004110). As a workaround, don't ues "constexpr", and use the functions pthread_mutex_init(), pthread_mutex_destroy(), pthread_cond_init() and pthread_cond_destroy() instead. This adds some runtime overhead, but is portable to POSIX implementations that have awkward initializer macros.
* Thread/Thread: replacement library for GThreadMax Kellermann2013-10-172-0/+222
|
* thread/{Cond,Mutex}: use "class" instead of "typedef"Max Kellermann2013-10-172-5/+4
| | | | Allows forward-declaration.
* gcc.h: rename to Compiler.hMax Kellermann2013-10-151-1/+1
|
* thread/Id: new class replacing GThread pointersMax Kellermann2013-08-101-0/+99
| | | | Remove a GLib dependencies from class EventLoop and DatabaseLock.
* thread/Cond: add method timed_wait()Max Kellermann2013-04-172-2/+19
|
* thread/{Mutex,Cond}: new backend for WIN32Max Kellermann2013-01-114-4/+135
| | | | | | Use CRITICAL_SECTION and CONDITION_VARIABLE. This requires Windows Vista or newer. It fixes problems with GLib threading objects that were implicitly created by static constructors before g_thread_init().
* thread/Cond: new wrapper for pthread_cond_t or GCondMax Kellermann2013-01-105-0/+189
|
* thread/GLibMutex: new Mutex implementationMax Kellermann2013-01-102-19/+44
| | | | | Switch WIN32 to this implementation to be able to use condition variables, which is impossible with CriticalSection.
* thread/PosixMutex: fix indentMax Kellermann2013-01-101-13/+13
|
* thread/Mutex: don't use std::mutexMax Kellermann2013-01-072-8/+68
| | | | Use a custom pthread_mutex_t wrapper because std::mutex adds overhead.
* Mutex: new wrapper for std::mutex, replaces GMutexMax Kellermann2013-01-042-0/+117