From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Albinus Newsgroups: gmane.emacs.devel Subject: Re: User interaction from multiple threads Date: Sat, 25 Aug 2018 13:58:54 +0200 Message-ID: <87bm9qbqtd.fsf@gmx.de> References: <838t59j821.fsf@gnu.org> <87lg92q7ih.fsf@runbox.com> <83a7phdl7r.fsf@gnu.org> <61492e7f622303d02405bedbe65fabae@webmail.orcon.net.nz> <83pnybdaer.fsf@gnu.org> <837ekicw7i.fsf@gnu.org> <877ekiierh.fsf@himinbjorg.adminart.net> <834lflb2fj.fsf@gnu.org> <83h8jk9l41.fsf@gnu.org> <876000c7ko.fsf@gmx.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1535198279 27263 195.159.176.226 (25 Aug 2018 11:57:59 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 25 Aug 2018 11:57:59 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: hw@adminart.net, Richard Stallman , Gemini Lasswell , psainty@orcon.net.nz, emacs-devel , emacs-devel-bounces+psainty=orcon.net.nz@gnu.org, Eli Zaretskii To: Elias =?utf-8?Q?M=C3=A5rtenson?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 25 13:57:54 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ftXCT-0006yS-PE for ged-emacs-devel@m.gmane.org; Sat, 25 Aug 2018 13:57:53 +0200 Original-Received: from localhost ([::1]:45437 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftXEa-0002fD-4e for ged-emacs-devel@m.gmane.org; Sat, 25 Aug 2018 08:00:04 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53683) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftXEN-0002bs-C6 for emacs-devel@gnu.org; Sat, 25 Aug 2018 07:59:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ftXEI-0003Fe-61 for emacs-devel@gnu.org; Sat, 25 Aug 2018 07:59:51 -0400 Original-Received: from mout.gmx.net ([212.227.15.18]:53801) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ftXDh-0002o3-H4; Sat, 25 Aug 2018 07:59:09 -0400 Original-Received: from detlef.gmx.de ([213.220.149.148]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0MLOMM-1fu5Rr124A-000ZJ0; Sat, 25 Aug 2018 13:58:57 +0200 In-Reply-To: ("Elias \=\?utf-8\?Q\?M\=C3\=A5rtenson\=22's\?\= message of "Fri, 24 Aug 2018 23:41:40 +0800") X-Provags-ID: V03:K1:5/Cl6V41qRKdZfh8BmcHpZem6jx8pnjosWqM6g1IxTuY7jLO7Hj LxfLxuuvPQ0hjrkYfk7pnbCyPALhbshP0Oj1exyM3ywP0dl/SBTEC/8AMHF6cnYxeNVt+DE bZ/D0TAV/R1qgkSBX0VZUefZQH/P5M3BuEyhKmIVTfDrGaoSFi8fbsj99FFmLW2GjQVT2Q9 qGkKyv8z8LuSvUDsQjS4w== X-UI-Out-Filterresults: notjunk:1;V01:K0:DYo/FWR9HQw=:J4GJaAQptWtfQHgyTX0wGx Ysm339dbIRIaUy30ZoV0RybrAXmj2rge8DRz8GrXR5Jx7wkZXCagcY0WhXd16fRy8/rJ2bPKn HPzB49P4WXzrpNWqfJTQ/v6nSzwFyVLeCKbJRDtqpJMkvegUcofS1BEfPIlay8aSc2UhHJKhc X6/SMcofQbcY72EoP4Gc/D8BwzibF4r2dFkr1c4l0uu0i3wd83UfMekItL1dHI9UuTWvQctNd Armsu/HVS4YU+v7YcmMPgKVsEDVmse5sk3j8KCSlT8vl7uQ8P3dR4hPfCC23kr/KilsIm7enq M6q5KQZ/x1zO1I7QSjbJb2LxWk3Y6Dc5Mb/14MunAaUNIg8KyWi9mOR9EtcAsa6JqBrlMcrvY vCM1Wd/fwh+pMG+o/2nYntcPYyxH7mulMWKWrIqo027Gf3t3x5ZzIPtxjUAaAuskJccVEiI4k 38BInMwUU4nV2HiLGVPVZEPUuPUkOtnX/G4DOA2fVreB2bTs36xYqfxyqZxC+e3977a4UwyU0 lkMlMrl+7827hd1Sa4XU+Yg+WlNKCAUYJO4rUX7utuYPZkdA4RDglVTnilaDqlAeunMgEsnxt gGXscW69h42RirSQJQSvr/qU5O5Y+2N1aN1lDRUcU1Mi0ySA6tcjogo0gEJqBypwVWRYt0rWw gfqWLNc7T9bCXRb5xEedoZW1MaDybPhIR5DUP7IAkgZcjCGSYuHLFQEX/IEQmGIH4jgk3DmVp YH39UlFfHJqIrapmdaxl6b8b3o2WQZeJkwl/7Bp9RRWa5dzx4Cjtjg9AsETW68hLrzqhFRnH X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.15.18 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:228897 Archived-At: Elias M=C3=A5rtenson writes: Hi Elias, > May I propose that the murex be hidden behind a function and a macro? > The purpose of this would be to allow for the function to adviced by > libraries that want to do something special. Something like this: > > (defmacro with-prompt-interaction (&body body) > (call-with-prompt-interaction `(lambda () ,@body))) > > (defun call-with-prompt-interaction (fn) > (with-mutex (interaction-mutex) > (funcall fn))) > > This would allow advices to be applied to the > call-with-prompt-interaction function. But then you must force everybody to use the `call-with-prompt-interaction' function. Doesn't it suffice to advice `mutex-lock' and `mutex-unlock'? In your advice code you could check, whether MUTEX is equal to `interaction-mutex'. > Regards, > Elias Best regards, Michael.