socketpool
¶
该 socketpool
模块通过池提供套接字。池本身就像 CPython 的 socket
模块。
在这些板上可用
-
class
socketpool.
Socket
¶ TCP、UDP 和 RAW 套接字。不能直接创建。相反,调用
SocketPool.socket()
.提供 CPython 的
socket.socket
API 的一个子集。它只实现不分配字节对象的 recv 版本。-
__exit__
(self) → None¶ 退出上下文时自动关闭 Socket。有关更多信息,请参阅 Lifetime 和ContextManagers 。
-
accept
(self) → Tuple[Socket, Tuple[str, int]]¶ 接受 SOCK_STREAM 类型的侦听套接字上的连接,创建 SOCK_STREAM 类型的新套接字。返回 (new_socket, remote_address) 的元组
-
bind
(self, address: Tuple[str, int]) → None¶ 将套接字绑定到地址
- 参数
address (~tuple) – (remote_address, remote_port) 的元组
-
connect
(self, address: Tuple[str, int]) → None¶ 将套接字连接到远程地址
- 参数
address (~tuple) – (remote_address, remote_port) 的元组
-
recvfrom_into
(self, buffer: _typing.WriteableBuffer) → Tuple[int, Tuple[str, int]]¶ 从远程地址读取一些字节。
返回一个元组,其中包含 * 接收到给定缓冲区的字节数 * 一个 remote_address,它是一个 ip 地址和端口号的元组
- 参数
buffer (object) – 要读入的缓冲区
-
recv_into
(self, buffer: _typing.WriteableBuffer, bufsize: int) → int¶ 从连接的远程地址读取一些字节,写入提供的缓冲区。如果给定 bufsize <= len(buffer),则最多将 bufsize 字节读入缓冲区。如果没有为 bufsize 提供有效值,则默认值为给定缓冲区的长度。
适合 SOCK_STREAM 类型的套接字返回读取的字节数的 int。
-
send
(self, bytes: _typing.ReadableBuffer) → int¶ 向连接的远程地址发送一些字节。适合 SOCK_STREAM 类型的套接字
- 参数
bytes (~bytes) – 要发送的一些字节
-
sendto
(self, bytes: _typing.ReadableBuffer, address: Tuple[str, int]) → int¶ 将一些字节发送到特定地址。适合 SOCK_DGRAM 类型的套接字
-
setblocking
(self, flag: bool) → Optional[int]¶ 设置此套接字的阻塞行为。
- 参数
flag (~bool) –False 表示非阻塞,True 表示无限期阻塞。
-