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 X-Received: by 10.224.52.6 with SMTP id f6mr24540847qag.2.1378106036882; Mon, 02 Sep 2013 00:13:56 -0700 (PDT) X-Received: by 10.49.71.34 with SMTP id r2mr26511qeu.14.1378106036869; Mon, 02 Sep 2013 00:13:56 -0700 (PDT) Path: border1.nntp.ams3.giganews.com!border1.nntp.ams2.giganews.com!border3.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!proxad.net!feeder2-2.proxad.net!nx02.iad01.newshosting.com!newshosting.com!216.196.98.146.MISMATCH!border3.nntp.dca.giganews.com!border1.nntp.dca.giganews.com!nntp.giganews.com!q10no2464232qai.0!news-out.google.com!p7ni345qas.0!nntp.google.com!j7no76817qai.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Mon, 2 Sep 2013 00:13:56 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=193.71.180.107; posting-account=uulyKwoAAAA86DO0ODu--rZtbje8Sytn NNTP-Posting-Host: 193.71.180.107 References: <19595886.4450.1332248078686.JavaMail.geo-discussion-forums@vbbfy7> <2012032020582259520-rblove@airmailnet> <12ee9bc5-3bdf-4ac0-b805-5f10b3859ff4@googlegroups.com> <6c58fae4-6c34-4d7a-ab71-e857e55897c0@x6g2000vbj.googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <8c3b331d-4da7-46ec-ab8e-2496c294cde4@googlegroups.com> Subject: Re: Ada advocacy From: Egil H H Injection-Date: Mon, 02 Sep 2013 07:13:56 +0000 Content-Type: text/plain; charset=ISO-8859-1 X-Original-Bytes: 2437 Date: 2013-09-02T00:13:56-07:00 List-Id: On Thursday, August 29, 2013 11:43:30 PM UTC+2, Jeffrey R. Carter wrote: > You can do > > > > select > > P1.E1; -- An entry call. > > then abort > > P2.E4; -- Another entry call. > > end select; > > > > to wait for 1 of 2 entry calls, and you can nest another ATC in there to do 3, and so on to whatever depth you like, so > > I don't really see a reason for the language not to provide a multi-way select for entry calls. > There's a race condition here: 1. P1.E1 is not open, P2.E4 is open and starts to execute. 2. P1.E1 becomes open while P2.E4 is still executing. 3. P2.E4 is not aborted, as entries are abort deferred regions 4. P1.E1 and P2.E4 is both executed and run to completion.