摘要:
GIL与普通互斥锁区别 验证多线程是否有用 死锁现象 信号量与event事件 进程池与线程池 协程 GIL与普通互斥锁区别 # 判断GIL的存在 from threading import Thread money = 100 def task(): global money money -= 1 阅读全文
摘要:
消息队列 IPC机制(进程间通信) 生产者消费模型 线程理论(重要) 开设线程的两种方式 线程实现TCP服务端并发 线程join方法 线程间数据共享 守护进程 GIL全局解释器锁 消息队列 队列: 先进先出(使用频率高) 堆栈: 先进后出(特定常见下用) # Queue队列 from multipr 阅读全文
摘要:
代码创建进程 join方法 进程间数据默认隔离 进程对象相关属性和方法 僵尸进程和孤儿进程 守护进程 互斥锁 一、代码创建进程 """ 1.创建进程的方式 鼠标双击桌面一个应用图标 代码创建 创建进程的本质: 在内存中要一块内存空间用来运行相应的程序代码 """ # multiprocessing 阅读全文
摘要:
一、UDP协议和实战 二、操作系统的发展史 三、多道技术 四、进程理论 一、UDP协议 # 客户端 import socket # 指定使用UDP协议, 不指定的话,默认为TCP协议 server = socket.socket(type=socket.SOCK_DGRAM) server.bind 阅读全文
摘要:
一、socket套接字 二、通信循环 三、代码优化和链接循环 四、黏包问题 一、socket套接字 1、socket套接字简介 socket套接字是一门技术 它为我们提供了快捷方式,不需要我们自己去处理OSI七层的每一层 2、实际应用 cs架构的软件都应该考虑到服务端,因为只有有了东西,才能提供东西 阅读全文
摘要:
一、软件开发架构 二、网络编程简介 三、OSI七层协议 四、互联网相关名词——局域网、广域网、交换机、路由器 五、TCP 和UDP协议 一、软件开发架构 # 1、软件开发架构含义 程序员在编写软件的时候应该遵循的架构设计——相当于之前写的ATM和选课系统所采用的的三层架构 # 2、软件开发架构的分类 阅读全文
摘要:
一、设计模块之单例模块 二、pickle模块 三、选课系统项目分析 一、设计模块 在IT行业中一共有23种设计模块,主要分为三大类型 1、创建类型 2、结构类型 3、行为类型 """设计模块是前辈们发明的经过反复的验证用来解决固定问题的固定套路""" 单例模式 单例模式就是一个类只能产生一个对象,用 阅读全文
摘要:
总结 一、反射实际案例 二、面向对象的双下方法 三、元类 四、元类进阶 五、双下new方法 一、反射实际案例 # 反射提供了使用者不需要考虑代码,操作系统的数据和功能的方法 # 利用面向对象编写系统终端功能 class WinCmd(object): def ls(self): print('win 阅读全文
摘要:
一、继承下的派生实际应用 二、面向对象三大特征之封装 三、面向对象三大特征之多态 四、面向对象之反射 一、继承下的派生实际应用 import datetime import json class MyJsonEncoder(json.JSONEncoder): def default(self, o 阅读全文