def start(self): # Иконки в списке self.list_icons_check = True self.thread_list_icons = thread_gfunc(self.cfg, False, True, self.list_icons) self.thread_list_icons.start() # Проверка активности клиентов self.client_status_check = True self.thread_client_status = thread_gfunc(self.cfg, False, True, self.client_status) self.thread_client_status.start() # Сканирование self.network_scan = True if (self.cfg.checkDhcp == "y"): self.thread_client_network_scan = thread_gfunc( self.cfg, False, True, self.client_network_scan) self.thread_client_network_scan.start() # Проверка Demo серверов self.demo_server_status_check = True self.thread_demo_server_status = thread_gfunc( self.cfg, False, True, self.demo_server_status, self.cfg.demo_check_interval) self.thread_demo_server_status.start() # Проверка таймеров self.timer_status_check = True self.thread_timer_active = thread_gfunc(self.cfg, False, True, self.timer_active, self.cfg.timers_check_interval) self.thread_timer_active.start() return False
def create_userList(cfg): gtk.gdk.threads_enter() try: cfg.userList.clear() create_tree_group(cfg) finally: gtk.gdk.threads_leave() # список псевдонимов для серверов alias_list = load_aliasList(cfg) servers = [] server_list = cfg.read_config("servers", "server_list") for x in range(int(server_list)): z = string.split(cfg.read_config("servers", "server" + str(x + 1)), ",") servers.append(z) for z_server in servers: # Добавить сервер gtk.gdk.threads_enter() try: server_iter = cfg.userList.append(None) for x in range(len(z_server)): if z_server[x] is None: z_server[x] = "" cfg.userList.set(server_iter, x, z_server[x]) cfg.userList.set(server_iter, 100, cfg.pixbuf_status_server_16) finally: gtk.gdk.threads_leave() thread_server_group = thread_gfunc(cfg, False, True, create_tree_server_group, cfg, server_iter, z_server, alias_list) thread_server_group.start()
def timer_userList(self, command): if (command == "start"): self.thread_userList = thread_gfunc(self.cfg, False, True, create_userList, self.cfg) self.thread_userList.start() if (command == "active"): self.thread_userList.join(0) if self.thread_userList.isAlive(): return True else: return False if (command == "restart"): # Если userList не сформирован ничего не делать self.thread_userList.join(0) if self.thread_userList.isAlive(): pass else: self.timer_userList("start")
def save_userList(cfg): if (cfg.save_userList_busy == False): cfg.save_userList_busy = True thread = thread_gfunc(cfg, False, True, save_userList_t, cfg) thread.start()