#!/usr/bin/env python from pyCERT import PriorityQueue from threading import Thread from random import randint from Queue import Queue class Consumer(Thread): def __init__(self,q): Thread.__init__(self) self.q=q; def run(self): for i in range(1000): self.q.get() class Producer(Thread): def __init__(self,q): Thread.__init__(self) self.q=q; def run(self): for i in range(1010): self.q.put( randint(0, 100)) q = PriorityQueue(0) th=[Consumer(q), Producer(q), Consumer(q), Producer(q)] map(lambda th:th.start(), th) map(lambda th:th.join(), th) print q.queue