TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy

TEAM-ADA@LISTSERV.ACM.ORG

Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Content-Transfer-Encoding: 7bit
Sender: "Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
From: Tom Moran <[log in to unmask]>
Date: Wed, 5 Nov 1997 08:13:27 -0800
Content-Type: text/plain; charset=us-ascii
MIME-Version: 1.0
Parts/Attachments: text/plain (18 lines)
>From a discussion on [log in to unmask] I conclude;
  delay 0.0; may, or may not, cause a task switch.
  If the compiler implements Annex D and the program includes a Pragma
Task_Dispatching_Poicy (FIFO_Within_Priorities); then a delay 0.0;
should definitely cause a task switch (assuming, obviously, there's
another task ready to switch to).
  The compiler should document a value D such that "delay D;" (or
greater than D) will cause blocking and thus task switching.  But if the
time resolution is poor (eg the 55ms common on PCs) the task may block
that long even if D is much less.
  Two questions: Is my understanding correct?  Are there compilers that
don't task switch on "delay 0.0;"?

(My ISP shows this as posted to c.l.a. several days ago, but nobody has
responded and dejanews doesn't seem to have heard of it.  Also, my
(mis)understanding of a requirement to switch on 0.0 was based on an
earlier version of Gnat (3.09?) that didn't.)

ATOM RSS1 RSS2