skip to navigation
skip to content

FsQueue 1.2

Elastic queue based on filesystem.

Downloads ↓

python FsQueue is a elastic synchronized queue class.

Source code

You can find here https://github.com/masahif/python-FsQueue

Features

The FsQueue module has almost same as python's queue class.

  • FsQueue is elastic.
  • FsQueue is multi process safe. Multi process can work with FsQueue.
  • FsQueue doesn't have max size feature so full() always return False.
  • FsQueue might work as FIFO queue.

A quick example

example:

import sys
from multiprocessing import Process
from FsQueue import Queue
from time import sleep

def put(q, num):
    for i in xrange(num):
        print "put:%d" % i
        sys.stdout.flush()
        q.put(i)

def get(q, num):
    for i in xrange(num):
        sys.stdout.flush()
        print "get:%d %d" % (i, q.get())
        q.task_done()

def process_test():
    q = Queue(init=True)
    p0 = Process(target=put, args=(q,1000))
    p0.start()
    p0.join()
    p1 = Process(target=get, args=(q,500))
    p2 = Process(target=get, args=(q,500))
    p1.start()
    p2.start()
    p1.join()
    p2.join()

    if not q.empty():
        print "Queue should be empty."
        raise Exception

if __name__ == '__main__':
    process_test()

Recent Change Log

v1.2

  • A quick example was changed.

v1.1

  • First release
 
File Type Py Version Uploaded on Size # downloads
FsQueue-1.2.tar.gz (md5) Source 2011-04-14 4KB 334