Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 12, 2019 14:36:09

Tosking
Зарегистрирован: 2018-07-22
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Намертво зависает программа

Написал чат. После продолжительной отправки сообщений с клиента на сервер окно клиента зависает и не работает.
Сервер

 import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(('', 9998))
clients = []
while 1:
    data, addr = s.recvfrom(1024)
    if addr not in clients:
        clients.append(addr)
        for x in clients:
            print(x)
            try:
                x.send((addr+' connected').encode())
            except:
                pass
    print(data.decode())

Клиент
 import socket
from tkinter import *
root = Tk()
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect(('localhost', 9998))
root.resizable(False, False)
root.geometry('500x500')
def send1(event):
    sock.send(e1.get().encode())
    e1.delete(0, END)
def loop():
    try:
        message = sock.recv()
        t1.insert(message+'\n')
    except:
        root.after(500, loop)
    root.after(500, loop)
t1 = Text(root)
e1 = Entry(root)
t1.configure(state=DISABLED)
e1.bind('<Return>', send1)
t1.pack(side='top', fill='both', expand='true')
e1.pack(side='bottom', fill='x', expand='true')
root.after(500, loop)
root.mainloop()

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version