Subject: | |
From: | |
Reply To: | |
Date: | Mon, 5 Feb 1996 11:01:00 PST |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
>Problem : If there are outstanding message file reads, it appears to prevent
>socket I/O errors from ever being returned to IOWAIT. The socket I/O never
>completes until the message file I/O completes.
>
>Anyone else see this? Solutions? (And *please* don't tell me to use socket
>and/or message file read timeouts... I do *NOT* want this thing to poll. =P)
>=============================================================
>Strangely enough, I've just spent the day looking at the intrinsics
>regarding message files and nowait I/O. One thing I noticed from scenario 1
>is that you did not post a second read to the message file (or if so, you
>didn't indicate such). This would imply that the remote host disconnected
>at or around the time the message file read completed, essentially making it
>the same as scenario 2 except the "minutes pass" can be condensed down to
>"milliseconds pass".
Ok, how about this scenario:
Issue nowait I/O read on socket
Issue nowait I/O read on message file
IOWAIT
Socket I/O completes
Issue nowait I/O read on socket
IOWAIT
...
... Minutes pass
...
(remote host now disconnects)
...
... Minutes pass
...
Message file I/O completes
IOWAIT
Socket I/O completes (ccode = 1, so the program shuts down)
>I'm looking at doing something similar to what you describe in your
>examples, except instead of referring to sockets and message files, I'm
>using terminals and message files. I want to be able to post a read on the
[...]
>THEN I started looking through the intrinsics, interprocess communications,
>etc. handbooks on the latest CD rom and found EXACTLY what I was looking for
> -- an "interrupt" service routine! You can use FCONTROL(message-file, 48,
[...]
>so the compiler coughs all over the place...
This doesn't solve my problem ;) The problem is that if the program has an
outstanding nowait read on a message file, it *prevents* socket errors from
being returned until the message file read finishes. Putting an interrupt
handler on the message file would solve nothing.. ;(
-Dan
.----------------------------------------------.
|Dan Hollis -- Pharmacy Computer Services, Inc.|
[log in to unmask] - (503)476-3139|
`----------------------------------------------'
|
|
|