From 7b01549ba82291e937afceb02ca6e6fdbe6e967e Mon Sep 17 00:00:00 2001 From: rpj Date: Mon, 9 May 2005 09:00:06 +0000 Subject: '' --- NEWS | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 82358ed..2190454 100644 --- a/NEWS +++ b/NEWS @@ -17,8 +17,17 @@ Bugs fixed ---------- * Thread Specific Data (TSD) key management has been ammended to -eliminate a source of (what was effectively) resource leakage (HANDLEs -plus memory). +eliminate a source of (what was effectively) resource leakage (a HANDLE +plus memory for each key destruct routine/thread association). This was +not a true leak because these resources were eventually reclaimed when +pthread_key_delete was run AND each thread referencing the key had exited. +The problem was that these two conditions are often not met until very +late, and often not until the process is about to exit. + +The ammended implementation avoids the need for the problematic HANDLE +and reclaims the memory as soon as either the key is deleted OR the +thread exits, whichever is first. + Thanks to Richard Hughes at Aculab for identifying and locating the leak. * TSD key destructors are now processed up to PTHREAD_DESTRUCTOR_ITERATIONS -- cgit v1.2.3