Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from multiprocessing import Queue, Process, Pool
- parameters=range(10)
- ncpu=2
- q=Queue()
- def calculate(par):
- # Do stuff
- q.put(result)
- print result
- def saving():
- while True:
- try:
- item=q.get(False)
- except :
- time.sleep(1)
- continue
- savefile.write(result)
- if __name__=="__main__":
- print 'Started!'
- with open('myfile.txt', 'w', buffering=0) as savefile:
- print 'Launched!'
- pool = Pool(processes=min(ncpu, len(parameters)))
- pool.map_async(calculate, parameters, chunksize=1)
- pool.close()
- k=Process(target=saving)
- k.start()
- pool.join()
- q.close()
- q.join_thread()
- print 'End!'
Advertisement
Add Comment
Please, Sign In to add comment