选择变得简单
项目描述
selectz
=======
-----
.. contents:: **目录**
:backlinks: none
安装
------------
selectz以通用wheel的形式在PyPI_上分发,可在
Linux/macOS和Windows上使用,并支持Python 2.7/3.5+和PyPy。
.. code-block:: bash
$ pip install selectz
用法
-----
修改了Python 3 selectors_示例_,使用`selectz`。
.. code-block:: python
import selectz
import socket
sel = selectz.Selector()
def accept(sock)
conn, addr = sock.accept() # 应该就绪
print('accepted', conn, 'from', addr)
conn.setblocking(False)
sel.register('read', conn, read)
def read(conn)
data = conn.recv(1000) # 应该就绪
if data
print('echoing', repr(data), 'to', conn)
conn.send(data) # 希望它不会阻塞
else
print('closing', conn)
sel.remove(conn)
conn.close()
sock = socket.socket()
sock.bind(('localhost', 1234))
sock.listen(100)
sock.setblocking(False)
sel.register('read', sock, accept)
while True
sel.select()
许可
-------
selectz根据以下两个许可协议进行分发:
- MIT_ 许可
- Apache_ 许可协议,版本2.0
您可以选择。
.. _PYPI: https://pypi.ac.cn
.. _example: https://docs.pythonlang.cn/3/library/selectors.html
.. _MIT: https://choosealicense.com/licenses/mit
.. _Apache: https://choosealicense.com/licenses/apache-2.0
=======
-----
.. contents:: **目录**
:backlinks: none
安装
------------
selectz以通用wheel的形式在PyPI_上分发,可在
Linux/macOS和Windows上使用,并支持Python 2.7/3.5+和PyPy。
.. code-block:: bash
$ pip install selectz
用法
-----
修改了Python 3 selectors_示例_,使用`selectz`。
.. code-block:: python
import selectz
import socket
sel = selectz.Selector()
def accept(sock)
conn, addr = sock.accept() # 应该就绪
print('accepted', conn, 'from', addr)
conn.setblocking(False)
sel.register('read', conn, read)
def read(conn)
data = conn.recv(1000) # 应该就绪
if data
print('echoing', repr(data), 'to', conn)
conn.send(data) # 希望它不会阻塞
else
print('closing', conn)
sel.remove(conn)
conn.close()
sock = socket.socket()
sock.bind(('localhost', 1234))
sock.listen(100)
sock.setblocking(False)
sel.register('read', sock, accept)
while True
sel.select()
许可
-------
selectz根据以下两个许可协议进行分发:
- MIT_ 许可
- Apache_ 许可协议,版本2.0
您可以选择。
.. _PYPI: https://pypi.ac.cn
.. _example: https://docs.pythonlang.cn/3/library/selectors.html
.. _MIT: https://choosealicense.com/licenses/mit
.. _Apache: https://choosealicense.com/licenses/apache-2.0
项目详情
关闭
selectz-1.0.2.tar.gz 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 00f9b5317b2f53a10a6d599dbb130cbffe1fdae50b4332e08d8d6238a56a6bda |
|
MD5 | 2e102895699ee15bb64e57d2692d8d4d |
|
BLAKE2b-256 | a76444b2a9bc7ae5f7dd18c9ebea4941908100e495839f2be01a9b6ac74f8f8d |