www-apache-bugdb mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jean-Pierre Arneodo <arne...@micronet.fr>
Subject os-windows/949: acces to thread **child_handles wanted.
Date Thu, 31 Jul 1997 11:20:02 GMT

>Number:         949
>Category:       os-windows
>Synopsis:       acces to thread **child_handles wanted.
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    apache (Apache HTTP Project)
>State:          open
>Class:          change-request
>Submitter-Id:   apache
>Arrival-Date:   Thu Jul 31 04:20:00 1997
>Originator:     arneodo@micronet.fr
>Release:        1.3a1
In a module, if you want to use friendly threads, 
and you want config data by thread using array, you can write functions as:

/* public function returning the number of threads in the process */
int threads_number() {
	extern int threads_per_child;
    return threads_per_child;

/* public function returning an offset [0 to ThreadsPerChild-1] or -1 on error */
int thread_offset () {
    int i;
	extern HANDLE* child_handles;
    HANDLE thread_handle = GetCurrentThread();
    for ( i=threads_number()-1 ; i>=0 ; i-- )
	if( thread_handle == child_handles[i] )
	    return i;
    return -1;

but the problem is:
child_handles is in the worker_main function stack.


Don't put child_handles in the worker_main function stack.

View raw message