From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Denis Bueno Newsgroups: gmane.emacs.devel Subject: Threads in emacs implementation Date: Mon, 6 Jun 2005 22:22:47 -0400 Message-ID: <6dbd4d0005060619227dd41364@mail.gmail.com> Reply-To: Denis Bueno NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1118111177 788 80.91.229.2 (7 Jun 2005 02:26:17 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 7 Jun 2005 02:26:17 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 07 04:26:11 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DfTmH-0004sl-2e for ged-emacs-devel@m.gmane.org; Tue, 07 Jun 2005 04:25:20 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DfTsg-0004Ak-9N for ged-emacs-devel@m.gmane.org; Mon, 06 Jun 2005 22:31:54 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DfTsB-00043B-4C for emacs-devel@gnu.org; Mon, 06 Jun 2005 22:31:23 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DfTs8-00041f-LM for emacs-devel@gnu.org; Mon, 06 Jun 2005 22:31:20 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DfTs7-0003wl-FD for emacs-devel@gnu.org; Mon, 06 Jun 2005 22:31:19 -0400 Original-Received: from [64.233.184.198] (helo=wproxy.gmail.com) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DfTnr-0001eW-Oe for emacs-devel@gnu.org; Mon, 06 Jun 2005 22:26:55 -0400 Original-Received: by wproxy.gmail.com with SMTP id 36so3090638wra for ; Mon, 06 Jun 2005 19:23:33 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=eRl/rLIo0e5ETlf2GplgsNjr71h59GOEDuvtjjCkOqxfRUzoEBN/TYnvWSMeXn+0UXyaKUXE/sJa+TkswsdJPMM6GPydgNDSTMKXB+AkdG/dxRXDokZ6gQLO9zxhWYNSRH7MjQI1UfbTpAcZaxRuSLKDOGX6mXbMRpF0lUC9ihI= Original-Received: by 10.54.49.34 with SMTP id w34mr3659120wrw; Mon, 06 Jun 2005 19:22:47 -0700 (PDT) Original-Received: by 10.54.43.38 with HTTP; Mon, 6 Jun 2005 19:22:47 -0700 (PDT) Original-To: emacs-devel@gnu.org Content-Disposition: inline X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:38218 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:38218 Hi all, Compared to many of the people who contribute to this list, I'm an unsophisticated emacser. I know that an enormous amount of intelligent development has been put into GNU/Emacs over the years, and I don't want to slight that. Having said that, my question is, has thought been put into multithreading parts of Emacs? Or exposing a rudimentary threading API to Emacs Lisp? This could easily devolve into a war about threading apis, but, just support some simple subset of pthreads would work. The background for my question: In Gnus, certain network operations often take a long time -- sometimes I don't want to check my email when it prompts me for a password, but I hit Return anyway, causing Emacs to visibly hang for a minute or two. Sometimes whatever server Gnus wants is down (or DNS is down, or whatever), and it 'hangs' until it's timed out. This downtime is in many cases at least long enough that I could profitably be doing work in other Emacs buffers. This downtime is probably experienced in other network modes in Emacs (like Tramp, I suspect, although I don't personally use it). So, why is Emacs single-threaded? What issues have been considered wrt having a multithread api in Emacs lisp? Thanks for Emacs as it is! I can't program without it. -Denis