线程-多线程socket server聊天、线程本节总结(二)

多线程接受input类型

client



import socket



sk = socket.socket()
sk.connect(('127.0.0.1',8080))



msg = sk.recv(1024)
print(msg)
inp = input('>>> ').encode('utf-8')
sk.send(inp)
sk.close()



server



import socket
from threading import Thread



def chat(conn):
conn.send(b'hello')
msg = conn.recv(1024).decode('utf-8')
print(msg)
conn.close()



sk = socket.socket()
sk.bind(('127.0.0.1',8080))
sk.listen()
while True:
conn,addr = sk.accept()
Thread(target=chat,args = (conn,)).start()
sk.close()


总结
# 正确的学习方法
# input
# output
# correct 纠正

# 线程
# 线程是进程中的执行单位
# 线程是cpu执行的最小单位
# 线城之间资源共享
# 线程的开启和关闭以及切换的时间开销远远小于进程
# 线程本身可以在同一时间使用多个cpu
# python 与 线程
# Cpython解释器在解释代码过程中容易产生数据不安全的问题
# GIL 全局解释器锁 锁的是线程
# threading


原文地址:https://www.cnblogs.com/mys6/p/10878645.html