摘要: 并发编程之多线程 一 同步锁 1 两个注意点 1).线程抢的是GIL锁,GIL锁相当于执行权限,拿到执行权限后才能拿到互斥锁Lock,其他线程也可以抢到GIL,但如果发现Lock仍然没有被释放则阻塞,即便是拿到执行权限GIL也要立刻交出来。 2).join是等待所有,即整体串行,而锁只是锁住修改共享 阅读全文
posted @ 2021-06-25 15:12 越关山 阅读(58) 评论(0) 推荐(0)
摘要: 并发编程之线程 一 什么是线程 计算机相当于大工厂,工厂里有一个个车间(进程) ,有很多人(线程) 干不同的事。 **进程是资源分配的最小单位,线程是CPU调度的最小单位。每一个进程中至少有一个线程。** 线程的开销更小,更轻量级。 二 开启线程的两种方式 1 通过函数的方式 # 第一种,通过函数 阅读全文
posted @ 2021-06-25 15:10 越关山 阅读(45) 评论(0) 推荐(0)
摘要: 进程基础及多进程的使用 一 进程理论知识 1 操作系统的作用 1).隐藏丑陋复杂的硬件接口,提供良好的抽象接口;应用程序员有了这些接口后,就不用再考虑操作硬件的细节,专心开发自己的应用程序即可。 2).管理、调度进程,并且将多个进程对硬件的竞争变的有序。 2 多道技术 2.1 产生背景: 针对单核, 阅读全文
posted @ 2021-06-25 15:08 越关山 阅读(256) 评论(0) 推荐(1)
摘要: 并发编程之进程间通信、生产者消费者模型 一 进程调度 (1) 先来先服务 (2) 短作业优先 (3) 时间片轮转 (4) 多级反馈队列 ​ 多级反馈队列调度算法即能使高优先级的作业得到响应又能使短作业(进程)迅速完成。 二 僵尸进程与孤儿进程 (1) 僵尸进程 进程结束了,资源还没来得及回收完成。 阅读全文
posted @ 2021-06-25 15:04 越关山 阅读(77) 评论(0) 推荐(0)
摘要: 元类metaclass 一 什么是元类 #### python中一切皆是对象。以如下代码为例分析: # 元类=》OldboyTeacher类=》obj class OldboyTeacher(object): school = 'oldboy' def __init__(self, name, ag 阅读全文
posted @ 2021-06-25 15:00 越关山 阅读(49) 评论(0) 推荐(0)
摘要: 猴子补丁、垃圾回收机制 一 猴子补丁 1 什么是猴子补丁 属性在运行时的动态替换,叫做猴子补丁(Monkey Patch) 。 猴子补丁的核心就是用自己的代码替换所用模块的源代码。 2 猴子补丁的功能(一切皆对象) 拥有在模块运行时替换的功能,例如:一个函数对象赋值给另一个函数对象(把函数原本的执行 阅读全文
posted @ 2021-06-25 14:59 越关山 阅读(129) 评论(0) 推荐(0)
摘要: UDP套接字通信、socketserver并发编程 一 基于UDP的套接字通信 1 TCP与UDP协议的对比 ### 1.可靠性 #### (1) TCP协议是可靠协议 ​ 对方必须回复一个ack确认消息,才会将自己这端的数据从内存中删除。 #### (2) UDP是不可靠协议 ​ 发送一条消息就会 阅读全文
posted @ 2021-06-25 14:57 越关山 阅读(192) 评论(0) 推荐(0)
摘要: 粘包问题及解决方案 一 什么是粘包问题 前提:只有TCP会发生粘包现象,UDP永远不会粘包。 粘包问题本质上就是接收方不知道消息的边界,不知道一次性该提取多少字节流用于解析消息,造成的消息解析错误问题。 二 为何么会有粘包问题 1 socket收发消息的原理之流式协议 ​ 发送端可以是1K1K的发送 阅读全文
posted @ 2021-06-25 14:55 越关山 阅读(341) 评论(0) 推荐(0)
摘要: socket编程基本流程及TCP套接字 一 socket编程基本流程 1 套接字的概念及分类 1.1 套接字是什么 套接字是一种【通信机制】,凭借这种机制,客户/服务器系统的开发工作既可以在本地单机上进行,也可以跨网络进行,Linux所提供的功能(如打印服务,ftp等) 通常都是通过套接字来进行通信 阅读全文
posted @ 2021-06-25 11:44 越关山 阅读(1160) 评论(0) 推荐(0)
摘要: 上网的基本流程(网络通信原理) 一 普通URL的组成 #### 协议--域名--端口--虚拟目录--文件名 以如下url为例: `http://www.aspxfans.com:8080/news/index.asp` ### 1 协议部分 该URL的协议部分为“http:”,这代表网页使用的是HT 阅读全文
posted @ 2021-06-25 11:42 越关山 阅读(1343) 评论(0) 推荐(0)