Package org.apache.tomcat.util.net
Class Acceptor<U>
- java.lang.Object
-
- org.apache.tomcat.util.net.Acceptor<U>
-
- All Implemented Interfaces:
Runnable
- Direct Known Subclasses:
Nio2Endpoint.Nio2Acceptor
public class Acceptor<U> extends Object implements Runnable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAcceptor.AcceptorState
-
Field Summary
Fields Modifier and Type Field Description protected Acceptor.AcceptorStatestate
-
Constructor Summary
Constructors Constructor Description Acceptor(AbstractEndpoint<?,U> endpoint)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Acceptor.AcceptorStategetState()protected inthandleExceptionWithDelay(int currentErrorDelay)Handles exceptions where a delay is required to prevent a Thread from entering a tight loop which will consume CPU and may also trigger large amounts of logging.voidrun()voidstop(int waitSeconds)Signals the Acceptor to stop, optionally waiting for that stop process to complete before returning.
-
-
-
Field Detail
-
state
protected volatile Acceptor.AcceptorState state
-
-
Constructor Detail
-
Acceptor
public Acceptor(AbstractEndpoint<?,U> endpoint)
-
-
Method Detail
-
getState
public final Acceptor.AcceptorState getState()
-
stop
public void stop(int waitSeconds)
Signals the Acceptor to stop, optionally waiting for that stop process to complete before returning. If a wait is requested and the stop does not complete in that time a warning will be logged.- Parameters:
waitSeconds- The time to wait in seconds. Use a value less than zero for no wait.
-
handleExceptionWithDelay
protected int handleExceptionWithDelay(int currentErrorDelay)
Handles exceptions where a delay is required to prevent a Thread from entering a tight loop which will consume CPU and may also trigger large amounts of logging. For example, this can happen if the ulimit for open files is reached.- Parameters:
currentErrorDelay- The current delay being applied on failure- Returns:
- The delay to apply on the next failure
-
-