httpd-modules-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Croteau, Beau" <Beau.Crot...@ca.com>
Subject Apache Thread Creation/Destroy Problem
Date Thu, 14 Jun 2007 15:15:41 GMT
I'm running the following code inside of an apache module:

 

apr_thread_t *thd_arr;

apr_pool_create(&ai->mp, NULL);

apr_threadattr_t *thd_attr;

apr_threadattr_create(&thd_attr, (ai->mp));
apr_threadattr_detach_set(thd_attr,1);

apr_thread_create(&thd_arr, thd_attr, ExecuteAction, ai, ai->mp);

 

The module runs in the mod_gsoap module (it's running as a gsoap web
service).  It's running on Apache 2.2.3 on Windows.

 

The problem is that we're seeing a thread handle leak.  I can see in the
logs that a thread is created and should be exiting correctly, but when
I use Handle.exe to dump all handles I can still see that the thread ID
is still in the list, even after exiting.

 

I've added the above code into a simple test program and the program
seems to run as expected, the handle count doesn't go up, the threads
are created, and when the threads die the thread count goes down.

 

I've also used the standard windows ::CreateThread and _beginthread
calls with similar types of 'leaks'.

 

When I dump the handle list for the apache process I see the thread
handle for the thread that should've since been released.

 

Any help would be greatly appreciated.  Thanks.


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message