equal
deleted
inserted
replaced
1 # -*- coding: utf-8 -*- |
|
2 # Worker code |
|
3 |
|
4 from multiprocessing import Process |
|
5 import logging |
|
6 logger = logging.getLogger("iro.worker") |
|
7 |
|
8 class Worker(Process): |
|
9 def __init__(self,queue): |
|
10 Process.__init__(self) |
|
11 self.queue=queue |
|
12 |
|
13 def run(self): |
|
14 logger.info('Workerprocess läuft nun...') |
|
15 indifier=0 |
|
16 while 1: |
|
17 job=self.queue.get() |
|
18 if job is None: |
|
19 break # reached end of queue |
|
20 indifier+=1 |
|
21 logger.info('ein neuer Job(%d)' %(indifier)) |
|
22 try: |
|
23 job.start(indifier) |
|
24 logger.info('Job(%d) fertig ;)'%(indifier)) |
|
25 except: |
|
26 job.setStatus("error") |
|
27 logger.exception('Job(%d) fehlgeschlagen :('%(indifier)) |
|
28 |
|