标签:__ username 协议 self 编程 网络 并发 服务端 客户端
网络编程总结篇
# OSI七层协议
1.应用层>>>HTTP协议,自定义协议,FTP协议
2.表示层
3.会话层
4.传输层>>>PORT协议(端口协议),TCP协议,UDP协议
5.网络层>>>ipv4/ipv6
6.数据链路层
7.物理连接层
# TCP与UDP
1.他们都属于传输层
2.TCP协议
流式协议,可靠协议,基于TCP协议进行数据交互之前需要做一系列复杂操作,
建立双向通道:第一次握手客户端给服务端发送请求建立客户端与服务端的请求,第二次服务端可以发出同意并请求建立一个服务端到客户端的通道,第三次握手就是客户端同意请求
断开链接:
四次握手客户端请求断开,服务端同样发出一个同意指令,然后服务端也会申请断开通道,客户端收到请求也会同意发出一个请求
3.UDP协议
丢包协议,不可靠协议
它主要就是朝一个地址发送数据如果能接收就接受,他也不会管那么多,但我们可以基于UDP协议的基础之上做很多额外的扩展来保证数据的安全
# CPU调度法则
1.时间片轮转法:先公平的将CPU分给每个人执行
2.多级反馈队列:根据作业长短的不同再合理分配CPU执行时间
# 并发与并行
并发:看上去同时执行的任务
并行:本质就是同时在执行
# 同步与异步
同步:提交完任务之后原地等待任务的返回结果 期间不做任何事情
异步:提交完任务之后不愿地等待任务的结果 直接去做其他事情 有结果自动提醒
# 阻塞与非阻塞
就绪态:程序之进入运行态之前肯定要处于就绪态
运行态:程序被CPU执行着
阻塞态:程序执行过程中有IO操作
# 进程
from multiprocessing import Process
import time
class MyProcess(Process):
def __init__(self, username):
self.username = username
super().__init__()
def run(self):
print('你好啊 小姐姐',self.username)
time.sleep(3)
print('get out!!!',self.username)
# 线程
if __name__ == '__main__':
p = MyProcess('tony')
p.start()
from threading import Thread
import time
class MyThread(Thread):
def __init__(self, username):
super().__init__()
self.username = username
def run(self):
print(f'{self.username} jason is running')
time.sleep(3)
print(f'{self.username} is over')
t = MyThread('jasonNB')
t.start()
标签:__,username,协议,self,编程,网络,并发,服务端,客户端 来源: https://www.cnblogs.com/ll71979461/p/16184115.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。