At 11:11 AM -0500 2/18/02, Matt Hebley wrote:
>At 02:33 PM 15/2/2002 -0800, Keith Rollin wrote:
>>At 3:56 PM -0500 2/15/02, Matt Hebley wrote:
>>>From what I understand, POSE using the host TCP stack has a
>>>hardwired 2 second timeout (i.e. it ignores the timeout you
>>>specify in the NetLib call).
>>
>>From where do you understand this? Poser does not ignore the
>>timeout values and instead substitute a 2 second timeout. There's
>>nothing in the documentation, release notes, or source code that
>>says anything about 2 second timeouts, so I'm keen to learn where
>>you heard this.
>
>I understand this mainly from hearsay, and personal experience. In
>Greg Winton, Palm OS Network Programming, O'Reilly, p199, it says
>"On Windows and Max machines, the host's sockets API do not support
>timeouts, so this parameter is ignored." It then goes on to say that
>POSE appears frozen until the call "times out." I asked at
>PalmSource and nobody seemed to know too much about it, except that
>there used to be a bug that had been fixed.
Perhaps the two-second timeout theory comes from AppNetTimeout, which
is defined to be two seconds by default. However, that's a
NetLib/sockets compatibility value, and not something directly
managed by Poser.
So, to summarize:
* Two-second timeouts are probably due to AppNetTimeout, and not
anything hardwired in Poser.
* Comments about Poser ignoring timeout values are no longer true
with regards to sending and receiving data (as of Poser 3.1). Other
NetLib functions taking timeouts and corresponding to sockets
functions that don't take timeouts (such as NetLibSocketOpen or
NetLibSocketClose) still ignore timeouts.
* Poser's timeouts will be off by a factor of 10 on Windows and Unix,
and a factor of .6 on the Mac. This will be fixed in Poser 3.5.
* Poser will still be unresponsive while redirected NetLib calls timeout.
--
-- Keith Rollin
-- Palm OS Emulator engineer
--
For information on using the Palm Developer Forums, or to unsubscribe, please
see http://www.palmos.com/dev/tech/support/forums/