一、tcp知识
TCP的两个特点
为什么能够可靠?
创建TCP套接字
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
关闭套接字
sock.close()
发送数据
data = input("")
sock.send(发送数据bytes)
接收数据
收到的数据 = sock.recv(4096)
b''
结合三次握手和四次挥手说明listen函数以及参数的作用 和 accept函数的作用 返回值的含义
listen
被动
表示已就绪队列的最大长度
从已就绪队列中取出一个和客户端关联的套接字
和客户端关联的套接字,客户端地址
地址重用选项的意义
忽略2MSL时间限制
二、多任务知识点
1. 多任务的两种方式
现代操作往以 线程作为 执行单元
并行:
同一时间点运行的多个任务
并发:
同一时间段运行的多个任务
2. 创建子线程
创建Thread类的对象
import threading
thd = threading.Thread(target=子线程运行的函数名, args=(位置参数), kwargs={参数名:值})
启动子线程创建和运行
thd.start()
阻塞等待子线程运行完成
thd.join()
3. 同步
保持一定秩序
互斥锁是一种同步手段
互斥锁特点:
保证在同一时间点 只有一个线程能够成功获取到 锁资源