# Class Poll

java.lang.Object
org.apache.tomcat.jni.Poll

@Deprecated public class Poll extends Object
Deprecated.
The scope of the APR/Native Library will be reduced in Tomcat 9.1.x / Tomcat Native 2.x and has been reduced in Tomcat 10.1.x / Tomcat Native 2.x onwards to only include those components required to provide OpenSSL integration with the NIO and NIO2 connectors.
Poll

Author:
  Mladen Turk

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`APR_NO_DESC`
Deprecated.
nothing here
`static final int`
`APR_POLL_FILE`
Deprecated.
descriptor refers to a file
`static final int`
`APR_POLL_LASTDESC`
Deprecated.
descriptor is the last one in the list
`static final int`
`APR_POLL_SOCKET`
Deprecated.
descriptor refers to a socket
`static final int`
`APR_POLLERR`
Deprecated.
Pending error
`static final int`
`APR_POLLHUP`
Deprecated.
Hangup occurred
`static final int`
`APR_POLLIN`
Deprecated.
Can read without blocking
`static final int`
`APR_POLLNVAL`
Deprecated.
Descriptor invalid
`static final int`
`APR_POLLOUT`
Deprecated.
Can write without blocking
`static final int`
`APR_POLLPRI`
Deprecated.
Priority data available
`static final int`
`APR_POLLSET_THREADSAFE`
Deprecated.
Adding or Removing a Descriptor is thread safe

## Constructor Summary

Constructors
Constructor
Description
`Poll()`
Deprecated.

## Method Summary

Modifier and Type
Method
Description
`static int`
`add(long pollset, long sock, int reqevents)`
Deprecated.
Add a socket to a pollset with the default timeout.
`static int`
`addWithTimeout(long pollset, long sock, int reqevents, long timeout)`
Deprecated.
Add a socket to a pollset with a specific timeout.
`static long`
`create(int size, long p, int flags, long ttl)`
Deprecated.
Setup a pollset object.
`static int`
`destroy(long pollset)`
Deprecated.
Destroy a pollset object
`static long`
`getTtl(long pollset)`
Deprecated.
Get the socket time to live.
`static int`
`interrupt(long pollset)`
Deprecated.
Make poll() return.
`static int`
`maintain(long pollset, long[] descriptors, boolean remove)`
Deprecated.
Maintain on the descriptor(s) in a pollset
`static int`
`poll(long pollset, long timeout, long[] descriptors, boolean remove)`
Deprecated.
Block for activity on the descriptor(s) in a pollset
`static int`
`pollset(long pollset, long[] descriptors)`
Deprecated.
Return all descriptor(s) in a pollset
`static int`
`remove(long pollset, long sock)`
Deprecated.
Remove a descriptor from a pollset
`static void`
`setTtl(long pollset, long ttl)`
Deprecated.
Set the socket time to live.
`static boolean`
`wakeable(long pollset)`
Deprecated.
Check if interrupt() is allowed.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### APR_POLLIN

public static final int APR_POLLIN
Deprecated.
Can read without blocking

See Also:
  - Constant Field Values

### APR_POLLPRI

public static final int APR_POLLPRI
Deprecated.
Priority data available

See Also:
  - Constant Field Values

### APR_POLLOUT

public static final int APR_POLLOUT
Deprecated.
Can write without blocking

See Also:
  - Constant Field Values

### APR_POLLERR

public static final int APR_POLLERR
Deprecated.
Pending error

See Also:
  - Constant Field Values

### APR_POLLHUP

public static final int APR_POLLHUP
Deprecated.
Hangup occurred

See Also:
  - Constant Field Values

### APR_POLLNVAL

public static final int APR_POLLNVAL
Deprecated.
Descriptor invalid

See Also:
  - Constant Field Values

### APR_POLLSET_THREADSAFE

public static final int APR_POLLSET_THREADSAFE
Deprecated.
Adding or Removing a Descriptor is thread safe

See Also:
  - Constant Field Values

### APR_NO_DESC

public static final int APR_NO_DESC
Deprecated.
nothing here

See Also:
  - Constant Field Values

### APR_POLL_SOCKET

public static final int APR_POLL_SOCKET
Deprecated.
descriptor refers to a socket

See Also:
  - Constant Field Values

### APR_POLL_FILE

public static final int APR_POLL_FILE
Deprecated.
descriptor refers to a file

See Also:
  - Constant Field Values

### APR_POLL_LASTDESC

public static final int APR_POLL_LASTDESC
Deprecated.
descriptor is the last one in the list

See Also:
  - Constant Field Values

## Constructor Details

### Poll

public Poll()
Deprecated.

## Method Details

### create

public static long create(int size, long p, int flags, long ttl) throws Error
Deprecated.
Setup a pollset object. If flags equals APR_POLLSET_THREADSAFE, then a pollset is created on which it is safe to make concurrent calls to apr_pollset_add(), apr_pollset_remove() and apr_pollset_poll() from separate threads. This feature is only supported on some platforms; the apr_pollset_create() call will fail with APR_ENOTIMPL on platforms where it is not supported.

Parameters:
  `size` - The maximum number of descriptors that this pollset can hold
  `p` - The pool from which to allocate the pollset
  `flags` - Optional flags to modify the operation of the pollset.
  `ttl` - Maximum time to live for a particular socket.
Returns:
  The pointer in which to return the newly created object
Throws:
  `Error` - Pollset creation failed

### destroy

public static int destroy(long pollset)
Deprecated.
Destroy a pollset object

Parameters:
  `pollset` - The pollset to destroy
Returns:
  the operation status

### add

public static int add(long pollset, long sock, int reqevents)
Deprecated.
Add a socket to a pollset with the default timeout.

Parameters:
  `pollset` - The pollset to which to add the socket
  `sock` - The sockets to add
  `reqevents` - requested events
Returns:
  the operation status

### addWithTimeout

public static int addWithTimeout(long pollset, long sock, int reqevents, long timeout)
Deprecated.
Add a socket to a pollset with a specific timeout.

Parameters:
  `pollset` - The pollset to which to add the socket
  `sock` - The sockets to add
  `reqevents` - requested events
  `timeout` - requested timeout in microseconds (-1 for infinite)
Returns:
  the operation status

### remove

public static int remove(long pollset, long sock)
Deprecated.
Remove a descriptor from a pollset

Parameters:
  `pollset` - The pollset from which to remove the descriptor
  `sock` - The socket to remove
Returns:
  the operation status

### poll

public static int poll(long pollset, long timeout, long[] descriptors, boolean remove)
Deprecated.
Block for activity on the descriptor(s) in a pollset

Parameters:
  `pollset` - The pollset to use
  `timeout` - Timeout in microseconds
  `descriptors` - Array of signaled descriptors (output parameter) The descriptor array must be two times the size of pollset. and are populated as follows:

       descriptors[2n + 0] -> returned events
       descriptors[2n + 1] -> socket

  `remove` - Remove signaled descriptors from pollset
Returns:
  Number of signaled descriptors (output parameter) or negative APR error code.

### maintain

public static int maintain(long pollset, long[] descriptors, boolean remove)
Deprecated.
Maintain on the descriptor(s) in a pollset

Parameters:
  `pollset` - The pollset to use
  `descriptors` - Array of signaled descriptors (output parameter) The descriptor array must be the size of pollset. and are populated as follows:

       descriptors[n] -> socket

  `remove` - Remove signaled descriptors from pollset
Returns:
  Number of signaled descriptors (output parameter) or negative APR error code.

### setTtl

public static void setTtl(long pollset, long ttl)
Deprecated.
Set the socket time to live.

Parameters:
  `pollset` - The pollset to use
  `ttl` - Timeout in microseconds

### getTtl

public static long getTtl(long pollset)
Deprecated.
Get the socket time to live.

Parameters:
  `pollset` - The pollset to use
Returns:
  Timeout in microseconds

### pollset

public static int pollset(long pollset, long[] descriptors)
Deprecated.
Return all descriptor(s) in a pollset

Parameters:
  `pollset` - The pollset to use
  `descriptors` - Array of descriptors (output parameter) The descriptor array must be two times the size of pollset. and are populated as follows:

       descriptors[2n + 0] -> returned events
       descriptors[2n + 1] -> socket

Returns:
  Number of descriptors (output parameter) in the Poll or negative APR error code.

### interrupt

public static int interrupt(long pollset)
Deprecated.
Make poll() return.

Parameters:
  `pollset` - The pollset to use
Returns:
  Negative APR error code

### wakeable

public static boolean wakeable(long pollset)
Deprecated.
Check if interrupt() is allowed.

Parameters:
  `pollset` - The pollset to use
Returns:
  `true` if `interrupt(long)` is allowed, else `false`