|
From: | Bruno Haible |
Subject: | [PATCH] ISO C 11 threads preparations |
Date: | Thu, 20 Jun 2019 12:42:50 +0200 |
User-agent: | KMail/5.1.3 (Linux/4.4.0-145-generic; KDE/5.18.0; x86_64; ; ) |
The first patch series are preparations: 01 lock tests: Avoid reference to undefined variable if !ENABLE_LOCKING. 02 cond tests: Simplify. 03 tls tests: Small improvements. These fix minor nits I found while looking at the tests. 04 thread, lock, cond, tls: Recognize C11 multithreaded applications. These gnulib modules have optimizations for single-threaded applications. They recognizes a single-threaded application by the fact that libpthread is not linked in (when pthread_create exists only in libpthread, not in libc). But on FreeBSD, the ISO C 11 threads implementation is in libstdthreads, not libpthread. Without this fix, the locks from the 'lock' module would not work in programs that create their threads through thrd_create instead of pthread_create. 05 pthread_mutex_timedlock: New module. This is an emulation of pthread_mutex_timedlock on systems that have <pthread.h> but lack this particular function. 06 cond: Make glthread_cond_timedwait more reliable on Windows. 07 lock, cond: Avoid possible counter wraparound on Windows. Small reliability fixes. 08 windows-once: New module. 09 windows-mutex: New module. 10 windows-recmutex: New module. 11 windows-timedmutex: New module. 12 windows-timedrecmutex: New module. 13 windows-cond: New module. 14 windows-tls: New module. 15 windows-thread: New module. These modules contain the native Windows implementation of the primitives. Refactored from the thread, lock, cond, tls module, to avoid code duplication. - windows-once: refactored from 'lock', - windows-mutex, windows-recmutex: likewise. Adds support for the trylock operations. - windows-timedmutex, windows-timedrecmutex: These are new lock implementations that support waiting with a timeout, based on windows-mutex and windows-recmutex. - windows-cond: refactored from 'cond'. - windows-tls: refactored from 'tls'. - windows-thread: refactored from 'thread'.
0001-lock-tests-Avoid-reference-to-undefined-variable-if-.patch
Description: Text Data
0002-cond-tests-Simplify.patch
Description: Text Data
0003-tls-tests-Small-improvements.patch
Description: Text Data
0004-thread-lock-cond-tls-Recognize-C11-multithreaded-app.patch
Description: Text Data
0005-pthread_mutex_timedlock-New-module.patch
Description: Text Data
0006-cond-Make-glthread_cond_timedwait-more-reliable-on-W.patch
Description: Text Data
0007-lock-cond-Avoid-possible-counter-wraparound-on-Windo.patch
Description: Text Data
0008-windows-once-New-module.patch
Description: Text Data
0009-windows-mutex-New-module.patch
Description: Text Data
0010-windows-recmutex-New-module.patch
Description: Text Data
0011-windows-timedmutex-New-module.patch
Description: Text Data
0012-windows-timedrecmutex-New-module.patch
Description: Text Data
0013-windows-cond-New-module.patch
Description: Text Data
0014-windows-tls-New-module.patch
Description: Text Data
0015-windows-thread-New-module.patch
Description: Text Data
[Prev in Thread] | Current Thread | [Next in Thread] |