跳转到主要内容

Python pickling 和 marshal 协议通过任何网络接口。

项目描述

PicklePipe
==========

.. image:: https://img.shields.io/travis/SethMichaelLarson/picklepipe/master.svg
:target: https://travis-ci.org/SethMichaelLarson/picklepipe
:alt: Linux 和 MacOS 构建状态
.. image:: https://img.shields.io/appveyor/ci/SethMichaelLarson/picklepipe/master.svg
:target: https://ci.appveyor.com/project/SethMichaelLarson/picklepipe
:alt: Windows 构建状态
.. image:: https://img.shields.io/codecov/c/github/SethMichaelLarson/picklepipe/master.svg
:target: https://codecov.io/gh/SethMichaelLarson/picklepipe
:alt: 测试套件覆盖率
.. image:: https://img.shields.io/codeclimate/github/SethMichaelLarson/picklepipe.svg
:target: https://codeclimate.com/github/SethMichaelLarson/picklepipe
:alt: 代码健康
.. image:: https://readthedocs.org/projects/picklepipe/badge/?version=latest
:target: http://picklepipe.readthedocs.io
:alt: 文档构建状态
.. image:: https://pyup.io/repos/github/sethmichaellarson/picklepipe/shield.svg
:target: https://pyup.io/repos/github/sethmichaellarson/picklepipe/
:alt: 依赖版本
.. image:: https://img.shields.io/pypi/v/picklepipe.svg
:target: https://pypi.python.org/pypi/picklepipe
:alt: PyPI 版本
.. image:: https://img.shields.io/badge/say-thanks-ff69b4.svg
:target: https://saythanks.io/to/SethMichaelLarson
:alt: 感谢维护者

Python pickling 协议通过任何网络接口。还提供基本的接口以实现您自己的序列化管道。

该项目是在我假期期间在24小时内启动并发布的。

开始使用 PicklePipe
-------------------------------

PicklePipe 可在 PyPI 上找到,可以使用 `pip <https://pip.pythonlang.cn>`_ 进行安装:

$ python -m pip install picklepipe

要从 `Github `_ 安装最新开发版本:

$ python -m pip install git+git://github.com/SethMichaelLarson/picklepipe.git


如果你的当前 Python 安装没有 pip,请尝试 `get-pip.py `_

安装 PicklePipe 后,你可以像使用其他 Python 模块一样使用它。
以下是一个简单的示例,演示如何在农场上安排单个作业。

.. code-block:: python

import picklepipe

# 创建一对连接的管道。
pipe1, pipe2 = picklepipe.make_pipe_pair(picklepipe.PicklePipe)

# 从一端发送一个对象。
pipe1.send_object('Hello, world!')

# 并从另一端检索它。
obj = pipe2.recv_object(timeout=1.0)

assert obj == 'Hello, world!'

# 也可以用来将对象发送到远程位置!
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect(('host', 12345))
pipe = picklepipe.PicklePipe(sock)
pipe.send_object('Hello, world!')
pipe.close()

API 参考文档
-------------

`readthedocs.io 上的 API 参考文档 `_ 提供了 API 级别的文档。

支持/报告问题
-----------------------

所有支持请求和问题报告都应该
`在 Github 上作为问题提交 `_。
请确保按照模板提交,以便您的请求可以尽快得到处理。
请尊重贡献者,不要使用个人联系方式提交支持请求。

贡献
------------

我们愉快地欢迎贡献,请参阅 `我们的贡献者指南 `_ 了解最佳起点和帮助方式。

许可
-------

PicklePipe 在 MIT 许可证下提供。有关详细信息,请参阅 `LICENSE.txt `_。


变更日志
=========

开发
-----------

* (添加功能或错误修复,并附上作者。)

版本 1.1.0 (2016年12月29日)
---------------------------------

* 创建了 :class:`picklepipe.JSONPipe` 用于序列化 JSON 数据。

版本 1.0.0 (2016年12月28日)
---------------------------------
* 创建了 :class:`picklepipe.PicklePipe` 的初始实现。
* 创建 :meth:`picklepipe.make_pipe_pair` 以创建连接的 :class:`picklepipe.PicklePipe` 实例对。
* 添加了对使用 :class:`picklepipe.BaseSerializationPipe` 创建自定义序列化管道的支持。
* 添加了对 `marshal` 对象序列化器的支持 :class:`picklepipe.MarshalPipe`。
* :class:`picklepipe.PicklePipe` 现在如果可用,则使用 `cPickle` 模块。
* 使用选择器使所有管道类型可选择。
* 添加了 `max_size` 属性以限制管道的内存使用。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

picklepipe-1.1.1.tar.gz (16.6 kB 查看哈希)

上传时间

构建分布

picklepipe-1.1.1-py2.py3-none-any.whl (12.6 kB 查看哈希)

上传时间 Python 2 Python 3

支持