Agreed... There are lots of places where we really don't need
true synchronization, since 100% accuracy in the "real"
values aren't crucial.
On Jul 20, 2007, at 12:24 PM, Greg Ames wrote:
please see rev. 558039. requests_this_child does not need to be
100% accurate. the cure below is worse than the disease.
Greg
----- Original Message ----
From: Dmytro Fedonin <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, June 14, 2007 11:49:42 AM
Subject: one word syncronize once more
Hi all,
I've got some response which shows that I was not clear enough in
my previous
post. Fullproof solution would be:
Index: server/mpm/worker/worker.c
===================================================================
--- server/mpm/worker/worker.c (revision 545597)
+++ server/mpm/worker/worker.c (working copy)
@@ -892,7 +887,7 @@
bucket_alloc = apr_bucket_alloc_create(ptrans);
process_socket(ptrans, csd, process_slot, thread_slot,
bucket_alloc);
worker_sockets[thread_slot] = NULL;
- requests_this_child--; /* FIXME: should be synchronized -
aaron */
+ apr_atomic_dec32(&requests_this_child); /* much slower
than important */
apr_pool_clear(ptrans);
last_ptrans = ptrans;
}
Because we don't care about if (requests_this_child <= 0) it would
be enough. But
it is too way slow and is not so important.
______________________________________________________________________
______________
Get the free Yahoo! toolbar and rest assured with the added
security of spyware protection.
http://new.toolbar.yahoo.com/toolbar/features/norton/index.php