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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,ab2ba9c5d12b0f12 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Concurrency in Gnat 3.05? Date: 1996/07/20 Message-ID: #1/1 X-Deja-AN: 169063769 references: <4sjqte$3mu@masala.cc.uh.edu> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-07-20T00:00:00+00:00 List-Id: Jerry said "But what you probably wanted to ask is: does GNAT/DOS do multi-tasking ? The answer, yes. But not pre-emptive tasking, what seems to be what you expected, but cooperative tasking." That's wrong, of course GNAT/DOS implements pre-emptive tasking, this is required by Ada semantics (i.e. when a high priority task becomes ready, it preempts a low priority running task). This certainly works, or if it does not, then it is a bug -- well actually that's not quite fair. Priorities and preemptive tasking are only required by Annex D, not by the core language. But in any case, it is I think clearly established by later psts in the thread (Jerry maybe your newsreader is way behind, or perhaps you are not following threads before answering) that the issue is time slicing among tasks of equal priority, which requires preemption of course, but should not be confused with the issue of whether or not preemptive tasking is implemented.