From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: undo-auto--undoable-change infloop Date: Sat, 30 Jul 2022 08:54:20 +0300 Message-ID: <834jyz6t83.fsf@gnu.org> References: <87o7xc1qbh.fsf@web.de> <831qu8dqrx.fsf@gnu.org> <87bktbciup.fsf@web.de> <875yjfo105.fsf@web.de> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36177"; mail-complaints-to="usenet@ciao.gmane.io" Cc: monnier@iro.umontreal.ca, emacs-devel@gnu.org To: Michael Heerdegen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Jul 30 07:55:51 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oHfS2-0009FW-Qn for ged-emacs-devel@m.gmane-mx.org; Sat, 30 Jul 2022 07:55:51 +0200 Original-Received: from localhost ([::1]:40232 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oHfS0-0004Iq-VZ for ged-emacs-devel@m.gmane-mx.org; Sat, 30 Jul 2022 01:55:48 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55850) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHfQP-0002y2-U8 for emacs-devel@gnu.org; Sat, 30 Jul 2022 01:54:09 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:58274) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHfQP-00005j-89; Sat, 30 Jul 2022 01:54:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=QC63Zt+sJmu150+Ehi7L/0NXUGsDuqss2B6+yc9EW9k=; b=cL9hvcoYpbtC Ej+N/vDOWZR01uyYgBM2JOb6R6hHoztEdH+48kyQwchAGa7R6bxzPb77cIPb9RFIMXK9sigKHW8Mu 57e7bAsebE3ltFNIRoLQUOlP2ZgE4bCr7IITPUvIR48P/IlvfYOQvT8c3XgOpgigV3W81+Vv6O2vo zZNY45e7Xu+zR2cAd+UdPWSZjOthXQMBLyLon5aW1lCZC9xTT1KiXelB+z5l0kfb6KgIn46/noBdV cxO8KdaVHDxyXeBO1hl7swZbG5rCOzJj4Ctrs2pAVrcF3jouy7hwernA3R+w9OgVONC5w9VV3pr8x 3ojYL5tQpxV4Pz9ef9cCSw==; Original-Received: from [87.69.77.57] (port=1029 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHfQO-0006sl-5B; Sat, 30 Jul 2022 01:54:08 -0400 In-Reply-To: <875yjfo105.fsf@web.de> (message from Michael Heerdegen on Sat, 30 Jul 2022 03:14:18 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:292849 Archived-At: > From: Michael Heerdegen > Cc: Eli Zaretskii , emacs-devel@gnu.org > Date: Sat, 30 Jul 2022 03:14:18 +0200 > > Stefan Monnier writes: > > > Maybe this is a symptom of having way too many timers? > > Maybe. > > Could it be that when executing the timer function takes longer than the > 0.1 seconds repeat delta, the timer fires again? See timer-event-handler, which is the function invoked when a timer is ripe, and handles both the invocation of the timer function and rescheduling of the next timer invocation. My reading of it is that the above _could_ happen, but: . it can only happen if the timer function calls something that causes Emacs to wait for input, like sit-for, perhaps or accept-process-output, because otherwise Emacs will not check for ripe timers for as long as the timer function runs . the number of such "overlapping" invocations should not be more than 10, controlled by the value of timer-max-repeats