本文简要介绍ruby语言中 Socket.gethostbyaddr
的用法。
用法
gethostbyaddr(address_string [, address_family]) → hostent
请改用 Addrinfo#getnameinfo
。不推荐使用此方法,原因如下:
-
不常见的地址表示:4/16 字节的二进制字符串来表示 IPv4/IPv6 地址。
-
gethostbyaddr() 可能需要很长时间,并且可能会阻塞其他线程。 (GVL 无法释放,因为gethostbyname() 不是线程安全的。)
-
此方法使用已从 POSIX 中删除的 gethostbyname() 函数。
此方法获取 address
的主机信息。
p Socket.gethostbyaddr([221,186,184,68].pack("CCCC")) #=> ["carbon.ruby-lang.org", [], 2, "\xDD\xBA\xB8D"] p Socket.gethostbyaddr([127,0,0,1].pack("CCCC")) ["localhost", [], 2, "\x7F\x00\x00\x01"] p Socket.gethostbyaddr(([0]*15+[1]).pack("C"*16)) #=> ["localhost", ["ip6-localhost", "ip6-loopback"], 10, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01"]
相关用法
- Ruby Socket.gethostbyname用法及代码示例
- Ruby Socket.gethostname用法及代码示例
- Ruby Socket.getservbyport用法及代码示例
- Ruby Socket.getaddrinfo用法及代码示例
- Ruby Socket.getnameinfo用法及代码示例
- Ruby Socket.getservbyname用法及代码示例
- Ruby Socket.getifaddrs用法及代码示例
- Ruby Socket.pair用法及代码示例
- Ruby Socket.udp_server_sockets用法及代码示例
- Ruby Socket.unpack_sockaddr_in用法及代码示例
- Ruby Socket.udp_server_recv用法及代码示例
- Ruby Socket.new用法及代码示例
- Ruby Socket.tcp用法及代码示例
- Ruby Socket.listen用法及代码示例
- 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.unix_server_socket用法及代码示例
- Ruby Socket.accept_nonblock用法及代码示例
- Ruby Socket.recvfrom用法及代码示例
- Ruby Socket.unix用法及代码示例
- Ruby Socket.ip_address_list用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Socket.gethostbyaddr。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。