iro/worker.py
author Sandro Knauß <knauss@netzguerilla.net>
Tue, 05 Oct 2010 01:45:32 +0200
changeset 39 31a2b1cd4981
parent 23 0180b538ed74
child 41 02e9b54ef4f0
permissions -rw-r--r--
anpassung der tests auf ein eigenes Verzeichnis

# -*- coding: utf-8 -*-
# Worker code

from multiprocessing import Process
import logging
logger = logging.getLogger("iro.worker")
import time

class Worker(Process):
    def __init__(self,queue):
        Process.__init__(self)
        self.queue=queue
        
    def run(self):
        logger.info('Worker thread läuft nun...')
        id=0
        while 1:
            job=self.queue.get()
            if job is None:
                break # reached end of queue
            id+=1
            logger.info('ein neuer Job(%d)' %(id))
            try:
                job.start(id)
                logger.info('Job(%d) fertig ;)'%(id))
            except:
                logger.exception('Job(%d) fehlgeschlagen :('%(id))