Go
Go
Move a Connection into a Socket Set
See more Socket/SSL/TLS Examples
Demonstrates Socket.TakeSocket, which moves a connection into a newly created member of this object's socket set. After one or more calls, the object acts as a set of sockets.
Background. A socket set groups multiple connections so they can be monitored together with the SelectForReading and SelectForWriting methods. After success, the source socket holds no connection.
Chilkat Go Downloads
success := false
listenSock := chilkat.NewSocket()
success = listenSock.BindAndListen(5000,25)
if success == false {
fmt.Println(listenSock.LastErrorText())
listenSock.DisposeSocket()
return
}
connectedSock := chilkat.NewSocket()
success = listenSock.AcceptNext(20000,connectedSock)
if success == false {
fmt.Println(listenSock.LastErrorText())
listenSock.DisposeSocket()
connectedSock.DisposeSocket()
return
}
// Move the connection out of connectedSock and into a newly created member of this object's socket
// set. After one or more such calls, socketSet acts as a set of connected sockets (useful with the
// SelectForReading / SelectForWriting methods). After success, connectedSock holds no connection.
socketSet := chilkat.NewSocket()
success = socketSet.TakeSocket(connectedSock)
if success == false {
fmt.Println(socketSet.LastErrorText())
listenSock.DisposeSocket()
connectedSock.DisposeSocket()
socketSet.DisposeSocket()
return
}
fmt.Println("Connection added to the socket set.")
listenSock.DisposeSocket()
connectedSock.DisposeSocket()
socketSet.DisposeSocket()