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=0.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,1583af5ff29435e5 X-Google-Attributes: gid103376,public From: Florian Weimer Subject: Re: Dynamic allocation of tasks Date: 2000/03/22 Message-ID: <87ya7aewb8.fsf@deneb.cygnus.argh.org>#1/1 X-Deja-AN: 600934479 References: <87r9d3gvix.fsf@deneb.cygnus.argh.org> <8basg1$627$1@nnrp1.deja.com> Mail-Copies-To: never Content-Type: text/plain; charset=us-ascii X-Complaints-To: abuse@cygnus.argh.org X-Trace: deneb.cygnus.argh.org 953746923 7037 192.168.1.2 (22 Mar 2000 17:42:03 GMT) Organization: Penguin on board User-Agent: Gnus/5.0804 (Gnus v5.8.4) Emacs/20.6 Mime-Version: 1.0 Reply-To: Florian Weimer NNTP-Posting-Date: 22 Mar 2000 17:42:03 GMT Newsgroups: comp.lang.ada Date: 2000-03-22T17:42:03+00:00 List-Id: Robert Dewar writes: > > I found no way to complete a task before its allocator > completes. > > terminate task (e.g. abort it), then use unchecked > deallocation (see RM D.12(4)). I tried this (with GNAT 3.12p), and it didn't work (there was a resource leak, of both memory and kernel threads IIRC). After reading the RM, I was convinced that I couldn't expect an implementation to support this, but a more careful study revealed that it's probably reasonable to expect this behavior (abort of task causes abnormal completion of the task body, but it *does* cause completion, which means the task body is finalized next, and, after that, it is terminated). What's the effect of an abort statement if the task in question is blocked in a syscall (such as read(2))?