|
Fellow programmers: I'm afraid I can't get into specifics here, but I've got a weird timing problem with a Java client talking to an AS/400-native client (ILE C and ILE RPG) through a socket, in an established connection. Under easily duplicated conditions, the client sends a request to the server, then fails to receive the reply sent by the server. Yet if I put diagnostics (a series of printf statements in the C portion) into the part of the server that processes the request and sends the reply, or even if I just have the server wait for a fraction of a second, it works fine. In our own installation. Yet it still fails at the customer site. About the only specifics I can get into here are that the Java client is reading the reply from a DataInputStream on a BufferedInputStream on the stream returned from a getInputStream() on the socket. It's my understanding that the BufferedInputStream layer should keep anything from getting lost if the client isn't ready to listen when the reply comes in. And yet that appears to be what's somehow happening. Any suggestions on what could be going wrong? (And I've already shared all the specifics I dare, so please don't ask for more.) -- James H. H. Lampert
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.