From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: the state of the concurrency branch Date: Tue, 27 Aug 2013 22:24:32 +0300 Message-ID: <83d2ozey33.fsf@gnu.org> References: <87vc2t7erx.fsf@fleche.redhat.com> <83txicffpe.fsf@gnu.org> <87haeb3lwp.fsf@fleche.redhat.com> <83mwo3f762.fsf@gnu.org> <87fvtvymi7.fsf@fleche.redhat.com> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1377631478 867 80.91.229.3 (27 Aug 2013 19:24:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 27 Aug 2013 19:24:38 +0000 (UTC) Cc: lekktu@gmail.com, monnier@iro.umontreal.ca, emacs-devel@gnu.org To: Tom Tromey Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Aug 27 21:24:38 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VEOsW-00058M-90 for ged-emacs-devel@m.gmane.org; Tue, 27 Aug 2013 21:24:36 +0200 Original-Received: from localhost ([::1]:58152 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VEOsV-0007ii-9j for ged-emacs-devel@m.gmane.org; Tue, 27 Aug 2013 15:24:35 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43788) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VEOsO-0007he-1i for emacs-devel@gnu.org; Tue, 27 Aug 2013 15:24:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VEOsG-0000rS-CA for emacs-devel@gnu.org; Tue, 27 Aug 2013 15:24:27 -0400 Original-Received: from mtaout22.012.net.il ([80.179.55.172]:60928) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VEOsG-0000rH-44 for emacs-devel@gnu.org; Tue, 27 Aug 2013 15:24:20 -0400 Original-Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0MS700100F39YL00@a-mtaout22.012.net.il> for emacs-devel@gnu.org; Tue, 27 Aug 2013 22:24:18 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MS700154F8IMMC0@a-mtaout22.012.net.il>; Tue, 27 Aug 2013 22:24:18 +0300 (IDT) In-reply-to: <87fvtvymi7.fsf@fleche.redhat.com> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 80.179.55.172 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:163063 Archived-At: > From: Tom Tromey > Cc: monnier@iro.umontreal.ca, lekktu@gmail.com, emacs-devel@gnu.org > Date: Tue, 27 Aug 2013 13:14:24 -0600 > > Eli> . Finally, if condition variables are unavailable (they are a pain on > Eli> Windows, since only the latest versions support them natively), is > Eli> it still possible to have threads, just without some > Eli> synchronization features? Or are condition variables currently a > Eli> must for the threading mechanism itself? > > I think it would be better if all platforms supported the same primitives. I agree. The question was more an attempt to understand how deeply does the threading implementation depend on Lisp mutexes and condition variables. > Condition variables can be implemented in a number of ways. > libjava already has a Windows port you can lift from. You mean libjava that is part of GCC? Thanks, I will look at that. (I already saw a few solutions, and have an idea of an implementation, but the more ideas the better.)