From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alain Schneble Newsgroups: gmane.emacs.devel Subject: Re: Asynchronous DNS Date: Tue, 9 Feb 2016 10:02:33 +0100 Message-ID: <86k2me8dee.fsf@realize.ch> References: <8760y7nag7.fsf@gnus.org> <83oabzzsjq.fsf@gnu.org> <87fuxazkfe.fsf@gnus.org> <83io25yeqk.fsf@gnu.org> <87h9hpnreg.fsf@gnus.org> <83y4b0wi7m.fsf@gnu.org> <87si17evk6.fsf@gnus.org> <83twlnvcz2.fsf@gnu.org> <87vb63obm3.fsf@gnus.org> <87r3gqmg6g.fsf@gnus.org> <83egcqtfnm.fsf@gnu.org> <86mvrdmk8p.fsf@realize.ch> <877fihjo4m.fsf@gnus.org> <86io20n3xn.fsf@realize.ch> <8760y055l1.fsf@gnus.org> <8660xzmyyr.fsf@realize.ch> <87pow7ocyw.fsf@gnus.org> <861t8nmxlj.fsf@realize.ch> <87y4auiurw.fsf@gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1455008601 32003 80.91.229.3 (9 Feb 2016 09:03:21 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 9 Feb 2016 09:03:21 +0000 (UTC) Cc: Eli Zaretskii , emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 09 10:03:12 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1aT4CV-0007mM-4x for ged-emacs-devel@m.gmane.org; Tue, 09 Feb 2016 10:03:11 +0100 Original-Received: from localhost ([::1]:53354 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aT4CU-0007Vd-7M for ged-emacs-devel@m.gmane.org; Tue, 09 Feb 2016 04:03:10 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45224) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aT4CM-0007TU-TP for emacs-devel@gnu.org; Tue, 09 Feb 2016 04:03:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aT4CJ-00060u-2O for emacs-devel@gnu.org; Tue, 09 Feb 2016 04:03:02 -0500 Original-Received: from clientmail.realize.ch ([46.140.89.53]:2866) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1aT4CE-000600-8j; Tue, 09 Feb 2016 04:02:54 -0500 Original-Received: from rintintin.hq.realize.ch.lan.rit ([192.168.0.105]) by clientmail.realize.ch ; Tue, 9 Feb 2016 10:02:34 +0100 Original-Received: from MYNGB (192.168.250.224) by rintintin.hq.realize.ch.lan.rit (192.168.0.105) with Microsoft SMTP Server (TLS) id 15.0.516.32; Tue, 9 Feb 2016 10:02:28 +0100 In-Reply-To: <87y4auiurw.fsf@gnus.org> (Lars Ingebrigtsen's message of "Tue, 09 Feb 2016 11:37:07 +1100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (windows-nt) X-ClientProxiedBy: rintintin.hq.realize.ch.lan.rit (192.168.0.105) To rintintin.hq.realize.ch.lan.rit (192.168.0.105) X-detected-operating-system: by eggs.gnu.org: Windows NT kernel [generic] X-Received-From: 46.140.89.53 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:199582 Archived-At: Lars Ingebrigtsen writes: > Alain Schneble writes: > >> I think the point here is that with these blocking calls in place, we >> wouldn't really need a separate :nowait 'immediate, just the existing >> :nowait t. And IIUC, this is also what Eli Zaretskii proposes. With >> this model, :nowait t really means: I request as much async behavior as >> possible. But if code is not arranged in an async fashion, then well, >> you might not get full async behavior. It's your fault, but we won't >> signal an error. > > If we can identify all the places where we have to insert these > blockers, then having :nowait t be as async as possible, then that would > be nice. I kinda feel that might not be realistic. But I may be > wrong. I mean, there aren't a hundred process-related built-in > functions... Your list was just in the tens, right? I think it should be feasible, really. The ones I had identified were these (oh, I think I just looked in process.c, but that should be sufficient, right?): `process-contact', `set-process-filter', `set-process-filter-multibyte', `set-process-window-size', `set-network-process-option', `set-process-coding-system', `process-filter-multibyte-p', `process-datagram-address', `set-process-datagram-address', `process-send-region', `process-send-string', `process-send-eof' Maybe the last three wouldn't be candidates as they throw an error even in the current implementation in case the process status is still 'connect, as you and I pointed out already in earlier notes.