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 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!gandalf.srv.welterde.de!news.jacob-sparre.dk!loke.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: timer_server triggers Task_Termination handler Date: Mon, 25 Apr 2016 16:42:43 -0500 Organization: JSA Research & Innovation Message-ID: References: NNTP-Posting-Host: rrsoftware.com X-Trace: loke.gir.dk 1461620564 20466 24.196.82.226 (25 Apr 2016 21:42:44 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Mon, 25 Apr 2016 21:42:44 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Xref: news.eternal-september.org comp.lang.ada:30283 Date: 2016-04-25T16:42:43-05:00 List-Id: "Dmitry A. Kazakov" wrote in message news:nffgqa$6b6$1@gioia.aioe.org... > On 2016-04-23 00:31, Randy Brukardt wrote: >> "Dmitry A. Kazakov" wrote in message >> news:nfcjmm$1nei$1@gioia.aioe.org... >> .... >>> I think it should be the task's master to which all task events are >>> reported. The master can propagate them further. >> >> That's how general termination handlers work. In this case, the "master" >> is >> the environment task, which is the master of all tasks in the Ada program >> (recall that masters are nested, most tasks belong a number of masters). >> The >> question here is whether the Ada implementer should be deciding that some >> tasks should be excluded from such reporting. > > But the environment task is not an explicitly declared Ada task. It is > implementation-dependent, so the ambiguity. There's nothing "implementation-dependent" about the environment task; it has to exist in any correct Ada implementation. > If it is a "real" task starting "real" implementation tasks, they must be > reported. The environment task has to be a "real" task (or at least, appear to be in the effects of the runtime library). > If the implementation tasks are not Ada tasks started by non-Ada means, > they cannot be reported or too difficult to. But this is correct: if the implementation tasks aren't Ada tasks, then of course they don't get reported. The language has nothing to say about whether the runtime is implemented in Ada or not. (For users that are doing detailed analysis of task behavior, hidden not-quite-tasks might be a problem, but it probably doesn't matter for the majority of users.) Randy.