skip to navigation
skip to content

Not Logged In

csFIFO 1.4

A simple cStringIO based FIFO, implemented as a circular buffer

License:

Creative Commons CC-BY-SA 3.0, see README.TXT

Changes:

1.0 Original Release
1.1 Changed write to look like other file operations and return a number
1.2 Added threading test and fixed bug with read/write stats, improved inspection slicing
1.3 Fix issue with stats printing if FIFO is not written
Improve debugging if multiple FIFO instances used. Added idle timer
1.4 Removed stream parameter from logging.StreamHandler() for python2.6 compatibility

Known Bugs:

None that I know of (eek)

Credit:

All credit to the posting by Cameron on StackOverflow, here: http://stackoverflow.com/questions/10917581/efficient-fifo-queue-for-arbitrarily-sized-chunks-of-bytes-in-python

Usage:

import csFIFO

f1=csFIFO()
data="Message"
f1.write(data)
size=2
data=f1.read(size)
f1.purge()

f2=csFIFO(max_size=1024*1024)
f2.write("Hello World")
if not f2.isEmpty():
  #Print some stats
  print f2

#Non-destructive inspection
print f2[:5]
print f2[4:8]
print f2[-5:]
print f2.contents()

Dependencies:

None that I know of

 
File Type Py Version Uploaded on Size
csFIFO-1.4-py2.6.egg (md5, pgp) Python Egg 2.6 2013-02-28 11KB
csFIFO-1.4-py2.7.egg (md5, pgp) Python Egg 2.7 2013-02-28 11KB
  • Downloads (All Versions):
  • 14 downloads in the last day
  • 181 downloads in the last week
  • 873 downloads in the last month