def __init__(self): """ Constructor """ super().__init__() self.current_panel = None self.is_alive = True self.server = Server(max_clients_connected=1) self.client = None self.preference = Preferences.Preferences(default_preferences=Preferences.DEFAULT_PREFERENCES) self.translation = Translation.Translation(self.preference) self.image_getter = ImageGetter.ImageGetter(self.translation) # Configure self.title(self.translation.get_translation("connect_four")) # noinspection SpellCheckingInspection self.iconphoto(True, self.image_getter.logo_image) # set the logo self.geometry("{}x{}".format(WIDTH, HEIGHT)) self.minsize(MIN_WIDTH, MIN_HEIGHT) self.protocol("WM_DELETE_WINDOW", self.destroy)
for i in range(1000): rtt100.append(100) rtt150.append(150) #+++++++++++++++++++++Chunks++++++++++++++++++++++++++++++++++++++++++ for size in chunksizes: clientq = queue.Queue() serverq = queue.Queue() ackq = queue.Queue() #++++++++++++++++++++++Sequential++++++++++++++++++++++++++++++ s = Server(size, ackq, clientq, serverq, "receive" , "sequential" , rtt100, 10) c = Client(size, ackq, clientq, serverq, "send", "sequential") s.setName("Server") c.setName("Client") s.start() c.start() c.join() while True: if not c.is_alive(): delay = s.get_delay() chunkresult['value'][:,0][np.logical_and(chunkresult['scheme'] == 'seq', chunkresult['chunksize'] == size)] = delay s.join() break
def server_start_stop_command(self): """ Start the server :return: None """ if self.ui.server.server_is_on: if not self.player_2_is_connected or tkinter.messagebox.askquestion( self.ui.translation.get_translation("server_dialog_server_stop_title"), self.ui.translation.get_translation("server_dialog_server_stop_message") ) == tkinter.messagebox.YES: if self.ui.server.stop_server(): self.server_port_spin_box.configure(state=tkinter.tix.NORMAL, increment=1) self.server_start_stop.configure( text=self.ui.translation.get_translation("server_configuration_start") ) self.server_state_label.configure( text=self.ui.translation.get_translation("server_state_stopped"), fg="#ee2e31" ) else: try: port = int(self.server_port_spin_box.get()) if port < 1 or port > 65535: raise ValueError except ValueError: tkinter.messagebox.showerror( self.ui.translation.get_translation("server_configuration_dialog_port_error_title"), self.ui.translation.get_translation("server_configuration_dialog_port_error_message") ) else: if port < GAME_PORT_MIN or port > GAME_PORT_MAX: if not tkinter.messagebox.askokcancel( self.ui.translation.get_translation("server_configuration_dialog_port_warning_title"), self.ui.translation.get_translation("server_configuration_dialog_port_warning_message") ): return self.ui.server = Server( port=port, max_clients_connected=1, on_message_function=self.server_on_message, on_client_connect_function=self.server_on_client_connect_function, on_client_disconnect_function=self.server_on_client_disconnect_function ) result = self.ui.server.start_server() if result[0]: self.server_port_spin_box.configure(state="readonly", increment=0) self.server_start_stop.configure( text=self.ui.translation.get_translation("server_configuration_stop") ) self.server_state_label.configure( text=self.ui.translation.get_translation("server_state_started"), fg="#78bc61" ) else: error_name = errno.errorcode[result[1]] if self.ui.translation.translation_exist(SERVER_ERROR_DIALOG_KEY_FORMAT.format(error_name)): tkinter.messagebox.showerror( self.ui.translation.get_translation("server_start_error_dialog_title") .format(result[1]), self.ui.translation.get_translation(SERVER_ERROR_DIALOG_KEY_FORMAT.format(error_name)) ) else: tkinter.messagebox.showerror( self.ui.translation.get_translation("server_start_error_dialog_title") .format(result[1]), self.ui.translation.get_translation("server_start_error_unknown_dialog_message") .format(result[1], error_name, result[2].strerror) )