thread e chat com sockets

This commit is contained in:
Joao Maria Araujo do Nascimento 2026-04-17 21:47:22 -03:00
parent 142c0b60df
commit bf56431785
4 changed files with 69 additions and 0 deletions

24
sockets/cliente_chat.py Normal file
View File

@ -0,0 +1,24 @@
import tkinter as tk
from tkinter import scrolledtext
janela = tk.Tk()
janela.title("Chat do IFRN")
rotulo_mensagem = tk.Label(janela, text="Digite sua mensagem")
rotulo_mensagem.pack()
entrada_mensagem = tk.Entry(janela, width=80)
entrada_mensagem.pack()
def clicar():
print("Fui clicado")
botao = tk.Button(janela, text="Enviar", command=clicar)
botao.pack()
area_mensagens = scrolledtext.ScrolledText(janela)
area_mensagens.pack()
area_mensagens.config(state="disabled")
janela.mainloop()

22
sockets/servidor_chat.py Normal file
View File

@ -0,0 +1,22 @@
import socket
import threading
servidor = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
servidor.bind(("0.0.0.0",5000))
servidor.listen()
print("Servidor inicializado!!!")
clientes = []
def ouvir_cliente(cliente):
while True:
mensagem = cliente.recv(1024)
for socket_cliente in clientes:
if socket_cliente != cliente:
socket_cliente.send(mensagem)
while True:
cliente, endereco_cliente = servidor.accept()
clientes.append(cliente)
thread = threading.Thread(target=ouvir_cliente, args=[cliente,])
thread.start()

3
tabuada.py Normal file
View File

@ -0,0 +1,3 @@
numero = int(input("Digite um número: "))
for i in range(11):
print(f"{numero}x{i}={numero*i}")

20
thread/exemplo1.py Normal file
View File

@ -0,0 +1,20 @@
import threading
import time
# Função que será executada pela thread
def executar(nome_thread, n_iteracoes):
for i in range(n_iteracoes):
print(f"Nome da thread: {nome_thread}")
time.sleep(2) # Parar por 2s
t1 = threading.Thread(target=executar,args=["Thread1",15,])
t2 = threading.Thread(target=executar,args=["Thread2",10,])
t1.start()
t2.start()
t1.join()
t2.join()
print("Final da thread principal")