示例#1
0
    def execute(self):
        lastCheck = time.time()
        delta = 0
        while True:
            asio.loop(0.1, True, None, 1)
            time.sleep(0.01)

            now = time.time()
            if now - lastCheck > delta:
                lastCheck = now
                if len(self.tasks) == 0:
                    break
                t = self.tasks.pop(0)

                if callable(t):
                    t()
                else:
                    delta = t
示例#2
0
    def run(self, timeout=None):
        if timeout:
            Timer.addTimer(timeout, self.stop)
        while True:
            try:
                if self.profileFlag == 0:
                    self.asyncLoop()
                else:
                    if self.profile is None:
                        self.createProfile()
                    self.profile.runcall(self.asyncLoop)
            except KeyboardInterrupt:
                break
            except:
                # ignore all exceptions
                pass

            if self.stoped:
                break

        asio.closeAll()
        asio.loop(0.05, True, self.socketMap)
示例#3
0
 def asyncLoop(self):
     asio.loop(0.01, True, self.socketMap, 1)
示例#4
0
 def poll(self):
     try:
         asio.loop(0, True, self.socketMap, 1)
     except:
         traceback.print_stack()