Control socket blocking and readiness.

Poll sockets for readiness.

socket_set_blocking(socket, blocking = TRUE)

socket_poll(sockets, events = "read", timeout_ms = 60000L)

Arguments

socket

A socketR socket handle.

blocking

Whether operations should block.

sockets

A socket handle or list of handles.

events

Requested "read", "write", or combined readiness.

timeout_ms

Timeout in milliseconds; use -1 to wait indefinitely.

Value

Invisibly, the socket handle.

A data frame with readiness flags and native revents values.

Examples

s <- socket_create()
socket_set_blocking(s, FALSE)
socket_close(s)
s <- socket_create()
socket_poll(s, "read", timeout_ms = 0L)
#>   socket readable writable error hangup invalid revents
#> 1      1    FALSE    FALSE FALSE   TRUE   FALSE      16
socket_close(s)