GNU bug report logs - #25214
26.0.50; Interacting with user from threads other than the primary

Previous Next

Package: emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Fri, 16 Dec 2016 15:19:02 UTC

Severity: normal

Merged with 32426

Found in versions 26.0.50, 27.0.50

Full log


View this message in rfc822 format

From: Zhang Haijun <ccsmile2008 <at> outlook.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: "25214 <at> debbugs.gnu.org" <25214 <at> debbugs.gnu.org>
Subject: bug#25214: #25214 26.0.50; Interacting with user from threads other than the primary
Date: Thu, 7 Feb 2019 01:39:54 +0000

> 在 2019年2月6日,下午11:41,Eli Zaretskii <eliz <at> gnu.org> 写道:
> 
>> From: Zhang Haijun <ccsmile2008 <at> outlook.com>
>> Date: Wed, 6 Feb 2019 06:58:44 +0000
>> 
>> Every inputting request from other threads can be treated like an email.
> 
> The problem is in receiving the input into Emacs in the first place.
> It has to be done by some thread, not necessarily the one that is
> executing when input arrives.  So we are back to square one.
> 
> Thanks.

What about the following:

1. Create a fd to receive the input request event. This fd can only be watched by main thread or a special keybord sheduler thread.
2. If a thread need input, it sends an input request event(containning its thread id, prompt …) to the fd and then goto background.
3. The main thread(or keyboard sheduler thread) receives the event and put it into in-box and show a notification to user.
4. User opens the in-box and selects a request. Emacs switches to the thread.

I’m not too familar with emacs’ internal. Maybe I’m wrong.

This bug report was last modified 6 years and 192 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.