Return-Path: Delivered-To: apmail-new-httpd-archive@apache.org Received: (qmail 57374 invoked by uid 500); 14 Jul 2001 20:26:41 -0000 Mailing-List: contact new-httpd-help@apache.org; run by ezmlm Precedence: bulk Reply-To: new-httpd@apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list new-httpd@apache.org Received: (qmail 57363 invoked from network); 14 Jul 2001 20:26:41 -0000 Date: Sat, 14 Jul 2001 13:26:18 -0700 From: Justin Erenkrantz To: new-httpd@apache.org Subject: Standards compliance in Apache code WAS Re: Terminiting threads in a process RE: [PATCH] Problems with MPM threaded Message-ID: <20010714132618.B14852@ebuilt.com> References: <20010714124951.E23346@ebuilt.com> <20010714131943.F23346@ebuilt.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010714131943.F23346@ebuilt.com>; from aaron@ebuilt.com on Sat, Jul 14, 2001 at 01:19:43PM -0700 X-AntiVirus: scanned for viruses by AMaViS 0.2.1-pre3 (http://amavis.org/) X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N On Sat, Jul 14, 2001 at 01:19:43PM -0700, Aaron Bannert wrote: > > Async cancellation of threads is VERY bad ju-ju. We don't do it because > > it causes most, if not all, thread libraries to leak. The cleanups are > > called because the child pool is destroyed when all the threads die. > > Right, but we're about to kill the processes anyway, so who cares if > it leaks on some platforms. Anyway, we're writing to a specification, > not an implementation. If Apache isn't going to encourage OS vendors to > properly implement their own APIs, who is? Eh, it's probably the other way around. Otherwise, we'd have no need for #ifdefs. =) Standards are only as good as their implementations. Most users of Apache couldn't care less if their favorite OS didn't implement a particular feature correctly. It's *our* problem to work around it. Ideally, yes, we could just write to a spec, but that's in fantasy land. I live in the real world with lots of sub-par implementations flying around. > (Just think how easy it would be for us if all these platforms fully supported > a single API, be it posix or whatever. Heaven!) > > Anyway, to me this is what pools were designed for. I'd still like to know how you are going to interrupt the cross-process mutex. It doesn't matter if it implemented Posix or whatever. That's not the problem here. We're in the middle of an uninterruptable call and that mutex can not be destroyed because it is *cross-process*. -- justin