#include <socket.h>
Inheritance diagram for TCPSession:
Public Methods | |
TCPSession (Semaphore *start, const InetHostAddress &host, tpport_t port, int size = 512, int pri = 0, int stack = 0) | |
Create a TCP socket that will be connected to a remote TCP server and that will execute under it's own thread. More... | |
TCPSession (Semaphore *start, TCPSocket &server, int size = 512, int pri = 0, int stack = 0) | |
Create a TCP socket from a bound TCP server by accepting a pending connection from that server and execute a thread for the accepted connection. More... | |
Protected Methods | |
int | WaitConnection (timeout_t timeout = TIMEOUT_INF) |
Normally called during the thread Initial() method by default, this will wait for the socket connection to complete when connecting to a remote socket. More... | |
void | Initial (void) |
The initial method is used to esablish a connection when delayed completion is used. More... | |
void | Final (void) |
TCPSession derived objects can be freely created with "new" and safely terminate their "Run" method on their own by self-deleting when the thread terminates. |
The TCP session also supports a non-blocking connection scheme which prevents blocking during the constructor and moving the process of completing a connection into the thread that executes for the session.
|
Create a TCP socket that will be connected to a remote TCP server and that will execute under it's own thread.
|
|
Create a TCP socket from a bound TCP server by accepting a pending connection from that server and execute a thread for the accepted connection.
|
|
TCPSession derived objects can be freely created with "new" and safely terminate their "Run" method on their own by self-deleting when the thread terminates.
Reimplemented from Thread. |
|
The initial method is used to esablish a connection when delayed completion is used. This assures the constructor terminates without having to wait for a connection request to complete. Reimplemented from Thread. |
|
Normally called during the thread Initial() method by default, this will wait for the socket connection to complete when connecting to a remote socket. One might wish to use setCompletion() to change the socket back to blocking I/O calls after the connection completes. To implement the session one must create a derived class which implements Run().
|