#!/usr/bin/env python from module import * import time import threading import signal import sys class store(threading.Thread): def __init__(self, cam, image): threading.Thread.__init__(self) self.cam = cam self.image = image def run(self): writeHistory(self.cam, self.image ) writeResize(self.cam, 'lo', self.image) class stream(threading.Thread): def __init__(self, cam): threading.Thread.__init__(self) self.cam = cam def run(self): image = getRequest(self.cam) if image: t = store(self.cam, image) t.start() class mgt(threading.Thread): def __init__(self, cam): threading.Thread.__init__(self) self.cam = cam self.maxThreads = 3 def run(self): lib = {} for i in range(0,self.maxThreads): lib[i] = stream(self.cam) while True: for i in range(0,self.maxThreads): if not lib[i].isAlive(): lib[i] = stream(self.cam) lib[i].start() time.sleep(0.2) if __name__ == '__main__': for id,name in getCams().iteritems(): t = mgt(id) t.start() while True: time.sleep(1)