Something I ran into with long ago in Universe with sleep/nap. Both use
the current TIME() as the starting point (which is milliseconds since
midnight) and then waits for your desired period. If your sleep/nap
period rolls over midnight your process will hang because its waiting to
count to a number it never gets to.
Doug Farmer wrote:
Wow, thanks of all of the responses. Unfortunately, none of them will seem to
work on UniData. I will be using NAP on UniVerse.
PAUSE and WAKE, I had not heard of. This is only on UniData so not a UniVerse
option. It would seem to be a good way to go, except for if the phantom process
aborts, the WAKE is never executed and the invoking process (UniObjects
subroutine) hangs forever.
David's openSocket suggestion does not wait at all if the socket can be opened.
If it cannot (for example host name is bad), the timeout is sometimes much
longer, probably due to DNS lookup of the bad host name.
I tried these examples in the code below. The results are show below the code.
When I run this, using NAP 250, I get 4 times the same, then another 4 times the same etc. This seems to show NAP 250 does sleep for a quarter of a second.
Doing NAP 1 for 2000 iterations took 31 seconds. Probably due to overhead of
setting up NAP 2000 times.
The openSocket came right back all the time.
Any other ideas, I am open to testing.
Again, thanks for all of the responses!
Doug Farmer
952-417-5225
Program Listing
0001 PRINT 'Nap 250'
0002 FOR IDX = 1 TO 20
0003 PRINT IDX "R#2":' ':OCONV(TIME(),'MTS')
0004 NAP 250
0005 NEXT IDX
0006 PRINT 'Start of 2000'
0007 PRINT OCONV(TIME(),'MTS')
0008 FOR IDX = 1 TO 2000
0009 NAP 1
0010 NEXT IDX
0011 PRINT OCONV(TIME(),'MTS')
0012 PRINT 'DONE WITH 2000'
0013 PRINT 'Open Socket'
0014 FOR IDX = 1 TO 20
0015 SleepTime = 250
0016 ERR = openSocket('loopback',25,1,SleepTime,HBUFF)
0017 PRINT IDX "R#2":' ':OCONV(TIME(),'MTS')
0018 NEXT IDX
Output from Program
Nap 250
1 09:11:29
2 09:11:29
3 09:11:29
4 09:11:30
5 09:11:30
6 09:11:30
7 09:11:30
8 09:11:31
9 09:11:31
10 09:11:31
11 09:11:31
12 09:11:32
13 09:11:32
14 09:11:32
15 09:11:32
16 09:11:33
17 09:11:33
18 09:11:33
19 09:11:33
20 09:11:34
Start of 2000
09:11:34
09:12:05
DONE WITH 2000
Open Socket
1 09:12:05
2 09:12:05
3 09:12:05
4 09:12:05
5 09:12:05
6 09:12:05
7 09:12:05
8 09:12:05
9 09:12:05
10 09:12:05
11 09:12:05
12 09:12:05
13 09:12:05
14 09:12:05
15 09:12:05
16 09:12:05
17 09:12:05
18 09:12:05
19 09:12:05
20 09:12:05
This message has been scanned for malware by Websense. www.websense.com
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
--
------------------------------------------------------------------------
Jeff Schasny - Denver, Co, USA
jschasny at gmail dot com
------------------------------------------------------------------------
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users