
import random,time,Queue
from multiprocessing.managers import BaseManager
task_queue = Queue.Queue()
result_queue = Queue.Queue()
class Queuemanager(BaseManager):
pass
Queuemanager.register('get_task_queue',callable=lambda:task_queue)
Queuemanager.register('get_result_queue',callable=lambda:result_queue)
manager = Queuemanager(address=('',8001),authkey='qiye')
manager.start()
task = manager.get_task_queue()
result = manager.get_result_queue()
for url in ['ImagerUrl'+i for i in range(10)]:
print('put task %s...'url)
task.put(url)
print('try get result...')
for i in range(10):
print('result is %s'%result.get(timeout=10))
manager.shutdown()
import time
from multiprocessing.managers import BaseManager
calss QueueManager(BaseManager):
pass
QueueManager.register('get_task_queue')
QueueManager.resgister('get_result_queue')
server_addr = '127.0.0.1'
print('Connect to server %s...'%server_addr)
m = QueueManager(address=(server_addr,8001),authkey='qiye')
m.conncet()
task = m.get_task_queue()
result = m.get_result.queue()
while(not task.empty()):
image_url = task.get(True,timeout=5)
print('run task download %s...'%image_url)
time.sleep(1)
result.put('%s---->>>success'%image_url)
print('worker exit.')

