def __UpdateForever(self): while True: time.sleep(self.__interval) self._Update()
feed = feedGroup.getFeed(options.delete) if not feed: parser.error("not found: '%s'" % options.delete) feedGroup.removeFeed(feed) settings.clear() # otherwise the deleted feed persists in settings if options.list: kwargs = {} if args: kwargs['feedNames'] = args for feed in feedGroup.getFeeds(**kwargs): log.info(feed) if doUpdate: kwargs = {} if args: kwargs['feedNames'] = args feedGroup.update(**kwargs) elapsed = 0 interval = 1 while feedGroup.hasFeedsUpdating(): if elapsed > 10 and elapsed % 5 == 0: log.info('waiting for: %s' % ', '.join(feedGroup.getUpdatingFeedNames())) time.sleep(interval) elapsed += interval feedGroup.writeSettings(settings) settings.write()
def MinecraftChangedCallback(fetcher): display_num = (fetcher.GetNumPlayersOnline() / MINECRAFT_MAX_DISPLAYABLE_PLAYERS) sender.Send(MINECRAFT=display_num) fetchers = ( cpu_fetcher.CpuFetcher(UPDATE_INTERVAL_SECS_CPU, change_callback=CpuChangedCallback), ram_fetcher.RamFetcher(UPDATE_INTERVAL_SECS_RAM, change_callback=RamChangedCallback), network_fetcher.NetworkFetcher(UPDATE_INTERVAL_SECS_NET, change_callback=NetChangedCallback), minecraft_fetcher.MinecraftFetcher( UPDATE_INTERVAL_SECS_MC, MinecraftChangedCallback, MINECRAFT_HOST) ) while any(map(lambda fetcher: fetcher.IsAlive(), fetchers)): try: line = arduino_serial.readline() while line: sys.stdout.write(line) sys.stdout.flush() line = arduino_serial.readline() time.sleep(UPDATE_INTERVAL_SECS) except KeyboardInterrupt, e: print 'Killed, exiting.' break