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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8ddc02527645a844 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-03-31 15:50:03 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!logbridge.uoregon.edu!msunews!not-for-mail From: "Chad R. Meiners" Newsgroups: comp.lang.ada Subject: Re: tasking with GNAT 3.14p on windows Date: Mon, 31 Mar 2003 18:44:56 -0500 Organization: Michigan State University Message-ID: References: <3e87f4e2$1@epflnews.epfl.ch> <7vu1djubmk.fsf@vlinux.voxelvision.no> NNTP-Posting-Host: arctic.cse.msu.edu X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 Xref: archiver1.google.com comp.lang.ada:35840 Date: 2003-03-31T18:44:56-05:00 List-Id: oops darn send button. "Jano" wrote in message news:MPG.18f2dca67f9d5139896cd@News.CIS.DFN.DE... > That's what I wanted to know. I'm not a RM lawyer, so I don't knew that. > I'll be glad if someone can point the relevant sections in the RM about > code not abortable. I believe 9.8 Abort of a Task - Abort of a Sequence of Statements is relevant but a I recomend reading "Concurrency in Ada 95" by Burns (I think that is the author's name I can't remember). > > The task support on NT is not > > broken; your understanding of Ada tasking is broken. ;) > > ;) As I've said, I'm not an Ada RM expert, but I think I'm not totally > clueless about how a multitasking program should work, if the compiler > adheres to annex D, as Gnat says. OTOH, as far as I know, Gnat isn't > validated under win32. You would have to contact ACT to get a validated compiler for any platform. Actually section 9 on tasking is not that bad. I do not claim to be an RM expert either ;) I do however make stabs at the document when I need to answer a specific question though. > > It is very easy to > > write system dependent tasking code. I have written several robust > > multi-tasking windows applications. You just have to understand how to > > implement your os calls so that they play well with tasking. > > I've also written multitasking window apps, and I don't like the tricks > you must do to workaround some NT limitations, and that's about I was > asking. One of the points of using Ada is to remain as much as possible > in the system independent side of the world ;-) hmm. I think I miscommunicated my point. First, writing operating system independent multi-tasking program is not obvious since tasking is often misunderstood. For example an common error is placing potentially blocking system calls (such as file IO) within a protected action. On most compilers however wrapping your put_lines in a protected object does not cause any problems, but some compilers might be able to detect that a blocking call is being made at runtime and raise a Program_Error exception. Care needs to taken to implement a multi-tasking program in a way that its OS calls are properly syncronized with the tasking system reguardless of the OS or compiler btw, what workarounds are you refering to? > > > Also, the faulty ceiling_priority model for protected objects is > > > mentioned or not? I can't remember... > > > > If you don't know then why are spreading FUD about tasking on NT? > > Well, I was thinking out loud to see if someone shares my concerns. I > like to be enlightened by others greater experience. I have nothing > against Gnat nor intend to spread FUD. That's okay. I misunderstood the context that you meant for your statements ;) I've never looked at Annex D so I can't answer your questions on it. -CRM