Library: Net
Package: TCPServer
Header: Poco/Net/TCPServerParams.h
Description
This class is used to specify parameters to both the TCPServer, as well as to TCPServerDispatcher objects.
Subclasses may add new parameters to the class.
Inheritance
Direct Base Classes: Poco::RefCountedObject
All Base Classes: Poco::RefCountedObject
Known Derived Classes: HTTPServerParams
Member Summary
Member Functions: getAcceptorNum, getMaxQueued, getMaxThreads, getReactorMode, getThreadIdleTime, getThreadPriority, getUseSelfReactor, setAcceptorNum, setMaxQueued, setMaxThreads, setReactorMode, setThreadIdleTime, setThreadPriority, setUseSelfReactor
Inherited Functions: duplicate, referenceCount, release
Types Aliases
Ptr
using Ptr = Poco::AutoPtr < TCPServerParams >;
Constructors
TCPServerParams
Creates the TCPServerParams.
Sets the following default values:
- threadIdleTime: 10 seconds
- maxThreads: 0
- maxQueued: 64
Destructor
~TCPServerParams
virtual ~TCPServerParams();
Destroys the TCPServerParams.
Member Functions
getAcceptorNum
int getAcceptorNum() const;
Returns the number of acceptors.
getMaxQueued
int getMaxQueued() const;
Returns the maximum number of queued connections.
getMaxThreads
int getMaxThreads() const;
Returns the maximum number of simultaneous threads available for this TCPServerDispatcher.
getReactorMode
bool getReactorMode() const;
Returns the reactor mode.
If true, use reactor mode, else use thread pool mode.
getThreadIdleTime
const Poco::Timespan & getThreadIdleTime() const;
Returns the maximum thread idle time.
getThreadPriority
Poco::Thread::Priority getThreadPriority() const;
Returns the priority of TCP server threads created by TCPServer.
getUseSelfReactor
bool getUseSelfReactor() const;
Returns true if acceptor's self reactor is used.
setAcceptorNum
void setAcceptorNum(
int acceptorNum
);
Sets the number of acceptors.
The number of acceptors must be greater than 0. The default is 1.
setMaxQueued
void setMaxQueued(
int count
);
Sets the maximum number of queued connections. Must be greater than 0.
If there are already the maximum number of connections in the queue, new connections will be silently discarded.
The default number is 64.
setMaxThreads
void setMaxThreads(
int count
);
Sets the maximum number of simultaneous threads available for this TCPServerDispatcher.
Must be greater than or equal to 0. If 0 is specified, the TCPServerDispatcher will set this parameter to the number of available threads in its thread pool.
The thread pool used by the TCPServerDispatcher must at least have the capacity for the given number of threads.
setReactorMode
void setReactorMode(
bool reactorMode
);
Sets the reactor mode.
If true, use reactor mode, else use thread pool mode.
setThreadIdleTime
void setThreadIdleTime(
const Poco::Timespan & idleTime
);
Sets the maximum idle time for a thread before it is terminated.
The default idle time is 10 seconds;
setThreadPriority
void setThreadPriority(
Poco::Thread::Priority prio
);
Sets the priority of TCP server threads created by TCPServer.
setUseSelfReactor
void setUseSelfReactor(
bool useSelfReactor
);
Sets the acceptor's self reactor.
If true, use acceptor's self reactor, else create {_maxThreads} threads to use