httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John Thompson" <>
Subject Re: some reasons why Apache 2.0 threaded is slower than prefork
Date Fri, 02 Mar 2001 16:04:04 GMT

And we won't bore people with the fact we can do inter-process message
queue operations (msgrcv, msgsnd) without a lock given certain restrictions
on the message queue via the S/390 PLO instruction.


John M. Thompson
Consulting Client IT-Architect
Financial Services Sector
IBM Corporation
Lotus Notes: John Thompson/Poughkeepsie/IBM
VM: thompson at kgnvmc

Jeff Trawick <> on 03/01/2001 08:58:03

Please respond to

Sent by:

Subject:  Re: some reasons why Apache 2.0 threaded is slower than prefork

Greg Stein <> writes:

> I once tried to created a lock-less linked-list for managing some thread
> state stuff in Python. I believe that it finally came to a point where I
> a simple proof that you just can't implement a read/write linked list in
> multi-threaded environemnt without a lock. Beats me if I can remember the
> key point, though.

As long as reasonable restrictions are placed on allowable list
operations (restrictions which are not a problem when the list is used
to maintain a free pool) you can implement a lock-free linked list.
Been there, done that.  On S/390 we commonly use a double-word
compare-and-swap operation.  Other platforms have this as well.
Different instructions are available on still more platforms.

Jeff Trawick | | PGP public key at web site:
             Born in Roswell... married an alien...

View raw message