R: Create a Socket Connection (original) (raw)
make.socket {utils} | R Documentation |
---|
Description
With server = FALSE
attempts to open a client socket to the specified port and host. With server = TRUE
the R process listens on the specified port for a connection and then returns a server socket. It is a good idea to use [on.exit](../../base/html/on.exit.html)
to ensure that a socket is closed, as you only get 64 of them.
Usage
make.socket(host = "localhost", port, fail = TRUE, server = FALSE)
Arguments
host | name of remote host |
---|---|
port | port to connect to/listen on |
fail | failure to connect is an error? |
server | a server socket? |
Value
An object of class "socket"
, a list with components:
socket | socket number. This is for internal use. On a Unix-alike it is a file descriptor. |
---|---|
port | port number of the connection. |
host | name of remote computer. |
Warning
I don't know if the connecting host name returned when server = TRUE
can be trusted. I suspect not.
Author(s)
Thomas Lumley
References
Adapted from Luke Tierney's code for XLISP-Stat
, in turn based on code from Robbins and Robbins “Practical UNIX Programming”.
See Also
[close.socket](../../utils/help/close.socket.html)
, [read.socket](../../utils/help/read.socket.html)
.
Compiling in support for sockets was optional prior to R 3.3.0: see[capabilities](../../base/html/capabilities.html)("sockets")
to see if it is available.
Examples
daytime <- function(host = "localhost"){
a <- make.socket(host, 13)
on.exit(close.socket(a))
read.socket(a)
}
## Official time (UTC) from US Naval Observatory
## Not run: daytime("tick.usno.navy.mil")
[Package _utils_ version 4.6.0 Index]