These all work OK, but as Larry pointed out, when you use a while loop, it consumes the capacity of the processor, so NOTHING else that needs a slice of time within the span of time the while loop runs will function properly. The Sleep API consumes no processor cycles. That is the advantage and it doesn't require any mucking around with your time format mid stream.
----- Original Message ----- From: "Stephen Markson" <[email protected]> To: "RBASE-L Mailing List" <[email protected]> Sent: Monday, September 10, 2012 10:20 AM Subject: [RBASE-L] - RE: PAUSE for less than one second. We use option 1 in codelock to create a binary command file called DELAY from the following ASCII file: -- Usage: RUN Delay USING <time in seconds to nearest millisecond> -- Example: "RUN Delay USING 3.5" will pause for 3.5 seconds SET V x REAL=.%1 SET V TimeFormat=(CVAL('TIME')) SET TIME FORMAT HH:MM:SS.SSS SET V Start TIME=.#TIME,Delay INTEGER=(NINT(.x*1000)) WHILE #TIME<(.Start+.Delay) THEN ENDWHILE SET TIME FORMAT &TimeFormat CLEAR V Start,Delay,TimeFormat,x RETURN Regards, Stephen Markson The Pharmacy Examining Board of Canada 416.979.2431 x251 From: [email protected] [mailto:[email protected]] On Behalf Of Lawrence Lustig Sent: Wednesday, September 05, 2012 11:33 AM To: RBASE-L Mailing List Subject: [RBASE-L] - PAUSE for less than one second. I want to pause each time through a loop, but only for 250 milliseconds (a quarter second). PAUSE FOR works fine for whole numbers of seconds. Is there any way to pause for something shorter than a second? -- Larry

