aboutsummaryrefslogtreecommitdiff
path: root/pthreads/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'pthreads/TODO')
-rw-r--r--pthreads/TODO16
1 files changed, 16 insertions, 0 deletions
diff --git a/pthreads/TODO b/pthreads/TODO
index fa9efc46e..e59205b4f 100644
--- a/pthreads/TODO
+++ b/pthreads/TODO
@@ -4,4 +4,20 @@
1. Implement PTHREAD_PROCESS_SHARED for semaphores, mutexes,
condition variables, read/write locks, barriers.
+2. For version 3 onwards: the following types need to change, resulting in an ABI
+ change:
+ a) ptw32_handle_t (a.k.a. pthread_t)
+ Change the reuse counter from unsigned int to size_t. Type "int" on 32 bit
+ and 64 bit Windows is 32 bits wide.
+
+ To give an indication of relative effectiveness of the current "unsigned int",
+ consider an application that creates and detaches threads at the rate of 1
+ per millisecond. At this rate the reuse counter will max out after 49 days.
+
+ After changing to "size_t" an application compiled for x64 and creating and
+ detaching a thread every nanosecond would max out after 584 years.
+
+ b) pthread_once_t
+ Remove unused elements.
+ \ No newline at end of file