# Poco::Net

# class TCPServerParams

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: getMaxQueued, getMaxThreads, getThreadIdleTime, getThreadPriority, setMaxQueued, setMaxThreads, setThreadIdleTime, setThreadPriority

Inherited Functions: duplicate, referenceCount, release

## Types Aliases

### Ptr

using Ptr = Poco::AutoPtr < TCPServerParams >;

## Constructors

### TCPServerParams

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

### 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.

### 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.

### 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.

### 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.