并发无关的套接字API
项目描述
connio
A python concurrency agnostic communication library.
传递一个URL到单个点API函数 connio.connection_for_url()
,它将返回一个具有通用通用API的通信对象。
当处理通过串行线或TCP(未来还包括USB)使用简单REQ-REP通信协议(例如: SCPI)的仪器时很有用。
根据您提供的URL,请求的通信对象将转发到相应的 serialio 或 sockio 库。
使用asyncio编写,支持不同的并发模型
- asyncio
- 经典阻塞API
- 基于未来的API
- Python 2兼容的阻塞API(对于那些仍然使用Python 2的人)
安装
在您喜欢的Python环境中
pip install connio
用法
import asyncio
from connio import connection_for_url
async def main():
# A local async serial line
sl = connection_for_url("serial:///dev/ttyS0", parity="E")
print(await sl.write_readline(b"*IDN?\n"))
# An async serial line over telnet server
sl = connection_for_url("rfc2217://moxa.acme.org:7890", parity="E")
print(await sl.write_readline(b"*IDN?\n"))
# An async TCP connection
tcp = connection_for_url("tcp://gepace.acme.org:5025")
print(await tcp.write_readline(b"*IDN?\n"))
# An sync TCP connection
tcp = connection_for_url("tcp://gepace.acme.org:5025", concurrency="sync")
print(tcp.write_readline(b"*IDN?\n"))
asyncio.run(main())
项目详情
关闭
connio-0.2.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a06a4965d1ce6a4621b511183a98f04a1e2c50ae59ca20f55537d5fea3501aaa |
|
MD5 | e2be5761caa9bb2e66024b3a3f4833ef |
|
BLAKE2b-256 | 1994e7adc24adafd1230a122a259e5680cbddd73b5b0201aa92147f8431ba8f6 |