From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: David Masterson Newsgroups: gmane.emacs.devel Subject: Re: Are there plans for a multi-threaded Emacs? Date: Thu, 20 Nov 2003 11:19:08 -0800 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <16317.5036.542164.297042@batcave.m198-149.dsl.rawbw.com> References: NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1069356807 10156 80.91.224.253 (20 Nov 2003 19:33:27 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 20 Nov 2003 19:33:27 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Thu Nov 20 20:33:24 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1AMuYO-0000fu-00 for ; Thu, 20 Nov 2003 20:33:24 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1AMuYO-0000pm-00 for ; Thu, 20 Nov 2003 20:33:24 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AMvS8-00044x-B2 for emacs-devel@quimby.gnus.org; Thu, 20 Nov 2003 15:31:00 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1AMvRX-0003ys-NA for emacs-devel@gnu.org; Thu, 20 Nov 2003 15:30:23 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1AMvQz-0003gb-24 for emacs-devel@gnu.org; Thu, 20 Nov 2003 15:30:20 -0500 Original-Received: from [198.144.192.41] (helo=mail0.rawbw.com) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AMvQ9-00036T-A4; Thu, 20 Nov 2003 15:28:57 -0500 Original-Received: from batcave.m198-149.dsl.rawbw.com.rawbw.com (m198-149.dsl.rawbw.com [198.144.198.149]) by mail0.rawbw.com (8.11.6p2/8.11.6) with ESMTP id hAKJRSo72308; Thu, 20 Nov 2003 11:27:29 -0800 (PST) Original-To: Miles Bader In-Reply-To: X-Mailer: VM 7.07 under 21.4 (patch 8) "Honest Recruiter" XEmacs Lucid X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:17976 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:17976 >>>>> Miles Bader writes: > David Masterson writes: >> For instance, if the display-engine could be separated from the >> lisp-engine parts, then perhaps a mini-scheduler could fork off >> lisp-engines as needed (or requested) to process complicated >> things. The "engines" would theoretically be lighter weight than >> Emacs proper, but not as light-weight as multi-threading would >> allow. > How would this be different than multiple threads, as far as > avoiding typical threading problems (when lisp programs modify > global/globally reachable data)? It was just speculation on my part (and not necessarily a very good one). In answer to your question, I would guess that a global data server would be needed to manage such access. I was envisioning that major packages (Gnus, VM, Calendar, ...) would each run in their own lisp engine and that very little data would need to be shared between the packages. -- David Masterson