From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul R Newsgroups: gmane.emacs.devel Subject: Re: multi-threaded Emacs Date: Fri, 05 Dec 2008 11:35:09 +0100 Message-ID: <87bpvq7vvm.fsf@gmail.com> References: <87abbiody1.fsf@master.homenet> <877i6l5d8s.fsf@master.homenet> <874p1npvtj.fsf@master.homenet> <87ej0qci8g.fsf@master.homenet> <87y6yxm7xr.fsf@master.homenet> <87oczroysm.fsf@master.homenet> <87oczr6jrn.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1228473356 10959 80.91.229.12 (5 Dec 2008 10:35:56 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 5 Dec 2008 10:35:56 +0000 (UTC) To: Emacs Devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Dec 05 11:37:00 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1L8Y3I-0000aw-5j for ged-emacs-devel@m.gmane.org; Fri, 05 Dec 2008 11:36:52 +0100 Original-Received: from localhost ([127.0.0.1]:58841 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L8Y27-0003og-8P for ged-emacs-devel@m.gmane.org; Fri, 05 Dec 2008 05:35:39 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L8Y1l-0003ga-Gk for emacs-devel@gnu.org; Fri, 05 Dec 2008 05:35:18 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L8Y1i-0003fX-An for emacs-devel@gnu.org; Fri, 05 Dec 2008 05:35:15 -0500 Original-Received: from [199.232.76.173] (port=52321 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L8Y1i-0003fK-2M for emacs-devel@gnu.org; Fri, 05 Dec 2008 05:35:14 -0500 Original-Received: from mail-fx0-f20.google.com ([209.85.220.20]:58469) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L8Y1h-0005ss-EP for emacs-devel@gnu.org; Fri, 05 Dec 2008 05:35:13 -0500 Original-Received: by fxm13 with SMTP id 13so149138fxm.18 for ; Fri, 05 Dec 2008 02:35:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:subject:references :date:in-reply-to:message-id:user-agent:mime-version:content-type; bh=RWXkaz5R2C3quOAMoerBiffrYFlmgjnfuibF5/rXQiY=; b=NKBnmGB5nXJ53nnZHrJA+QAd0yoZwbzgsAE4afa6elkqbygcvVLnwIcWukUWLzZwvA GH7U+YVacaKgNO0FsJUT7RJvgYzEFfg9nO9+zY3flUK2K2g7rAUcPMgTCPYh/4qjH+Q2 4/hHAkdRujOExj5gh2ICRt3o8OVo3n/eBsErg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:subject:references:date:in-reply-to:message-id:user-agent :mime-version:content-type; b=SiKw+FOohAhAfnE0nBrdAgDXo0y6Uiv8+W52Z+rtrq8bji361GgoIaV1sIcPs7wzH3 D329XhIhuluFF7XCQcfiq5tYGYalWDu9AO4NtW/YaeFlanxE+K2WubjwMwLgE3C7bmQM wHJj8hQ+bbONS2xyl0ZwjhYlmhW2oXYPIi21g= Original-Received: by 10.223.114.74 with SMTP id d10mr1134264faq.87.1228473312310; Fri, 05 Dec 2008 02:35:12 -0800 (PST) Original-Received: from ubuT42 (pdc35-1-82-242-132-111.fbx.proxad.net [82.242.132.111]) by mx.google.com with ESMTPS id 12sm17066643fks.20.2008.12.05.02.35.11 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 05 Dec 2008 02:35:11 -0800 (PST) In-Reply-To: (Eli Zaretskii's message of "Fri, 05 Dec 2008 12:10:19 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) 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:106604 Archived-At: Eli> Any Emacs feature which, like spell-checking, uses a subprocess to Eli> do its job, already uses a kind of non-preemptive multi-threading Eli> built into wait_reading_process_output and its subroutines. This is Eli> because Emacs checks all the possible sources of input, including Eli> sub-process output, when it is idle. Indeed, I tried flyspell again and I felt it a lot more responsive than I was expecting. With threads this could be extended to features not relying on external processes. Also, fontlocking is immediate except for multiline matches, which only happens when idle for some time. I can feel it, but maybe the major modes I'm using don't make proper use of fontlocking feature. -- Paul