From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: Victor Porton Newsgroups: comp.lang.ada Subject: How D.15 "Timing Events" are implemented? (SIGALRM) Date: Thu, 16 Nov 2017 04:51:52 +0200 Organization: Aioe.org NNTP Server Message-ID: NNTP-Posting-Host: edFHTOfx8phAphItWrZ8cQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7Bit X-Complaints-To: abuse@aioe.org User-Agent: KNode/4.14.10 X-Notice: Filtered by postfilter v. 0.8.2 Xref: feeder.eternal-september.org comp.lang.ada:48930 Date: 2017-11-16T04:51:52+02:00 List-Id: Signal handlers (including SIGALRM) on Unix must not call non-reentrant functions. So how D.15 Timing Events works in Ada? (I am interested mostly in GNAT implementation.) Because Ada RM does not require the handler to be "reentrant", this cannot be implemented straight as a SIGALRM handler. What is the implementation? -- Victor Porton - http://portonvictor.org