A fast, zero-copy, circular buffer for Python
Project description
circbuf implements a circular buffer for Python. It allows for zero copy operation, i.e. it uses memoryview to expose consumer and producer buffers. Access to the buffer is synchronised by locks, managed by context managers.
Example
import circbuf
buf = circbuf.CircBuf()
# Produce data
with buf.producer_buf as mv:
mv[0] = 42
buf.produced(1)
print('First entry: {}'.format(next(iter(buf)))) # First entry: 42
Features
Pure Python
Minimises allocation of big memory chunks
Automatic access synchronisation
Tested on Python 3.2, 3.3, 3.4
Useful Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file circbuf-0.1b1.linux-x86_64.tar.gz
.
File metadata
- Download URL: circbuf-0.1b1.linux-x86_64.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98903ec2649d168266c45cebddbb354acc0b2b910fb25bde50ad2643b310c317 |
|
MD5 | ada599a249e8ffe6d73f5c486652093e |
|
BLAKE2b-256 | 243dd9dd9946f5f8695af9f58db372e0a26bedab9ff55bbc44eed3978ccc3093 |
File details
Details for the file circbuf-0.1b1-py32, py33, py34-none-any.whl
.
File metadata
- Download URL: circbuf-0.1b1-py32, py33, py34-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3.2, py33, py34
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c51d58ec380b536da0bdb9a8b907ee007ff07e4d2a7725f8ff4eda1f24988619 |
|
MD5 | 89bbe8cdf6637887cd97edbf22c8ad52 |
|
BLAKE2b-256 | 23efe5753b816da94c2217b180c0b4ee116e1f5f62e83e904cf9cada12092372 |