Skip to main content

Elastic queue based on filesystem.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
FsQueue-1.2.tar.gz (5.1 kB) Copy SHA256 hash SHA256 Source None Apr 14, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page