Visual FoxPro
Visual FoxPro
Check Whether a Socket Is Writable
See more Socket/SSL/TLS Examples
Demonstrates Socket.CheckWriteable, which waits for the connected socket to become writable. It returns 1 if writable, 0 if it did not become writable before the timeout, or -1 on error.
Background. A maxWaitMs of 0 performs a nonblocking poll. This is useful for flow control before attempting a large send.
Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loSocket
LOCAL lnBTls
LOCAL lnMaxWaitMs
LOCAL lnWritable
lnSuccess = 0
loSocket = CreateObject('Chilkat.Socket')
* Connect to the server using TLS.
lnBTls = 1
lnMaxWaitMs = 5000
lnSuccess = loSocket.Connect("example.com",5000,lnBTls,lnMaxWaitMs)
IF (lnSuccess = 0) THEN
? loSocket.LastErrorText
RELEASE loSocket
CANCEL
ENDIF
* Wait up to 5 seconds for the socket to become writable. Returns 1 if writable, 0 if it did not
* become writable before the timeout, or -1 on error.
lnWritable = loSocket.CheckWriteable(5000)
IF (lnWritable < 0) THEN
? loSocket.LastErrorText
RELEASE loSocket
CANCEL
ENDIF
IF (lnWritable <> 1) THEN
? "The socket did not become writable before the timeout."
RELEASE loSocket
CANCEL
ENDIF
? "The socket is writable."
RELEASE loSocket