Advertisement
Guest User

corey g

a guest
Feb 5th, 2009
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.90 KB | None | 0 0
  1. import threading
  2. import Queue
  3. import time
  4.  
  5.  
  6. class ResultWriter(threading.Thread):
  7.     def __init__(self, queue):
  8.         threading.Thread.__init__(self)
  9.         self.q = queue    
  10.  
  11.     def run(self):
  12.         f = open('foo.txt', 'a')
  13.         while True:
  14.             try:
  15.                 item = self.q.get(False)
  16.                 f.write(item)
  17.                 f.flush()
  18.             except Queue.Empty:
  19.                 # re-check queue for messages every x sec
  20.                 time.sleep(.01)
  21.            
  22.                
  23. class Foo(threading.Thread):
  24.     def __init__(self):
  25.         threading.Thread.__init__(self)
  26.    
  27.     def run(self):
  28.         q = Queue.Queue(0)
  29.  
  30.         t = ResultWriter(q)
  31.         t.setDaemon(True)
  32.         t.start()
  33.  
  34.         while True:
  35.             print 'foo'
  36.             q.put('foo')
  37.  
  38.  
  39. f = Foo()
  40. f.setDaemon(True)
  41. f.start()
  42. while True:
  43.     time.sleep(.1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement