From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Marius Vollmer Newsgroups: gmane.lisp.guile.devel Subject: Re: Code review for thread safeness Date: Tue, 08 Mar 2005 02:18:51 +0100 Message-ID: <87oedvvssk.fsf@zagadka.de> References: <87wtsjw1ro.fsf@zagadka.de> <87fyz75bja.fsf@zip.com.au> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1110245387 12601 80.91.229.2 (8 Mar 2005 01:29:47 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 8 Mar 2005 01:29:47 +0000 (UTC) Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Tue Mar 08 02:35:28 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1D8Td2-0007a9-7z for guile-devel@m.gmane.org; Tue, 08 Mar 2005 02:35:20 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1D8TrP-00021q-Lp for guile-devel@m.gmane.org; Mon, 07 Mar 2005 20:50:11 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1D8Tp9-0000pD-3C for guile-devel@gnu.org; Mon, 07 Mar 2005 20:47:51 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1D8Tp1-0000j9-7R for guile-devel@gnu.org; Mon, 07 Mar 2005 20:47:43 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1D8Tp0-0000fq-B7 for guile-devel@gnu.org; Mon, 07 Mar 2005 20:47:42 -0500 Original-Received: from [195.253.8.218] (helo=mail.dokom.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1D8TOv-00038x-IX for guile-devel@gnu.org; Mon, 07 Mar 2005 20:20:45 -0500 Original-Received: from [195.253.16.196] (helo=zagadka.ping.de) by mail.dokom.net with smtp (Exim 4.34) id 1D8TOu-0008TP-Rl for guile-devel@gnu.org; Tue, 08 Mar 2005 02:20:45 +0100 Original-Received: (qmail 29533 invoked by uid 1000); 8 Mar 2005 01:18:51 -0000 Original-To: guile-devel@gnu.org In-Reply-To: <87fyz75bja.fsf@zip.com.au> (Kevin Ryde's message of "Tue, 08 Mar 2005 09:36:09 +1100") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/21.3.50 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org X-MailScanner-To: guile-devel@m.gmane.org Xref: news.gmane.org gmane.lisp.guile.devel:4823 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:4823 Kevin Ryde writes: > Marius Vollmer writes: >> >> If there might be non-local exits, scm_frame_critical_section can be >> used instead. > > If an error occurs and a lazy-catch executes, is the mutex unlocked > for that handler? No. Good point. Hmm. I haven't thought about lazy catches at all, yet... They are like asyncs but can not be blocked. But, they are not as much uncontrolled as asyncs. The important point here is that a critical section is not reentered when it is not designed to allow this. When a lazy handler tries to reenter it, an error is signalled when scm_frame_critical_section is used with a non-recursive mutex. I think this is appropriate. > The ones I've spotted are (I might have posted this before), > > gethostbyname > getpwuid > setpwent (etc) > getgrgid > setgrent (etc) > setlocale > scm_mem2symbol > > or scm_i_mem2symbol or whatever it is now. I probably won't get a > chance to actually do anything about these. Thanks, I'll check them. -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel