本文简要介绍ruby语言中 Socket.pair
的用法。
用法
pair(domain, type, protocol) → [socket1, socket2]
socketpair(domain, type, protocol) → [socket1, socket2]
创建一对相互连接的套接字。
domain
应该是一个通信域,例如::INET、:INET6、:UNIX 等。
socktype
应该是套接字类型,例如::STREAM、:DGRAM、:RAW 等。
protocol
应该是域中定义的协议,域默认为 0。
s1, s2 = Socket.pair(:UNIX, :STREAM, 0)
s1.send "a", 0
s1.send "b", 0
s1.close
p s2.recv(10) #=> "ab"
p s2.recv(10) #=> ""
p s2.recv(10) #=> ""
s1, s2 = Socket.pair(:UNIX, :DGRAM, 0)
s1.send "a", 0
s1.send "b", 0
p s2.recv(10) #=> "a"
p s2.recv(10) #=> "b"
相关用法
- Ruby Socket.udp_server_sockets用法及代码示例
- Ruby Socket.unpack_sockaddr_in用法及代码示例
- Ruby Socket.udp_server_recv用法及代码示例
- Ruby Socket.new用法及代码示例
- Ruby Socket.tcp用法及代码示例
- Ruby Socket.getservbyport用法及代码示例
- Ruby Socket.listen用法及代码示例
- Ruby Socket.gethostname用法及代码示例
- Ruby Socket.unix_server_loop用法及代码示例
- Ruby Socket.sockaddr_un用法及代码示例
- Ruby Socket.accept用法及代码示例
- Ruby Socket.recvfrom_nonblock用法及代码示例
- Ruby Socket.tcp_server_sockets用法及代码示例
- Ruby Socket.bind用法及代码示例
- Ruby Socket.getaddrinfo用法及代码示例
- Ruby Socket.getnameinfo用法及代码示例
- Ruby Socket.unix_server_socket用法及代码示例
- Ruby Socket.accept_nonblock用法及代码示例
- Ruby Socket.recvfrom用法及代码示例
- Ruby Socket.unix用法及代码示例
- Ruby Socket.gethostbyaddr用法及代码示例
- Ruby Socket.ip_address_list用法及代码示例
- Ruby Socket.sysaccept用法及代码示例
- Ruby Socket.getservbyname用法及代码示例
- Ruby Socket.connect_nonblock用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Socket.pair。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。