httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Stein <gst...@lyra.org>
Subject Re: some reasons why Apache 2.0 threaded is slower than prefork
Date Fri, 02 Mar 2001 08:15:53 GMT
On Thu, Mar 01, 2001 at 08:58:03PM -0500, Jeff Trawick wrote:
> Greg Stein <gstein@lyra.org> 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 had
> > a simple proof that you just can't implement a read/write linked list in a
> > 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.

I'm talking about pure C code. Of course you can do it with VAX architecture
bit twiddling, or compare-and-swap, or test-and-set, or atomic increments or
whatever. But those facilities are not available to "plain old C."

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Mime
View raw message