摘要: 一、死锁与递归锁 所谓死锁:是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 关于死锁的经典问题:哲学家吃面 死锁问题: import time def 阅读全文
posted @ 2021-07-23 20:38 Gnomeshghy 阅读(34) 评论(0) 推荐(0)
摘要: 一、如何开启线程 进程是操作系统调度的最小单位,线程是cpu调度的最小单位。一个进程最少有一个主线程,一个进程中能开启多个线程。真正干活的是线程。 from multiprocessing import Process from threading import Thread def task(): 阅读全文
posted @ 2021-07-22 20:35 Gnomeshghy 阅读(36) 评论(0) 推荐(0)
摘要: 一、进程间的数据是隔离的 from multiprocessing import Process def task(): global n n = 100 print("子进程中:", n) if __name__ == '__main__': p = Process(target=task, ) 阅读全文
posted @ 2021-07-22 18:29 Gnomeshghy 阅读(48) 评论(0) 推荐(0)
摘要: 昨日内容回顾 猜年龄游戏 务必完成 整型 # python中不同数据类型之间无法直接交互 类型转换 int() # 只有纯数字可以 进制转换 bin() # 转二进制 oct() # 转八进制 hex() # 转十六进制 int(其他进制的字符串类型,原有进制) 浮点型 float() # 在纯数字 阅读全文
posted @ 2021-07-22 12:29 Gnomeshghy 阅读(49) 评论(0) 推荐(0)
摘要: 一、进程的并行和并发 并行:并行是指两者同时执行,比如赛跑,两个人都在不停的往前跑;(资源够用,比如三线程,四核的cpu) 并发:并发是指资源有限的情况下,两者交替轮流使用资源,比如一段路(单核cpu资源)同时只能过一个人,A走一段后,让给B,B用完继续给A,交替使用,目的拾提高速率。 并发与并行的 阅读全文
posted @ 2021-07-20 19:47 Gnomeshghy 阅读(37) 评论(0) 推荐(0)
摘要: 一、socket抽象层简介 我们知道两个进程如果需要进行通讯最基本的一个前提是能够唯一标示一个进程,在本地进程通讯中我们可以使用PID来唯一标示一个进程,但PID只在本地唯一,网络中的两个进程PID冲突几率很大,这时候我们需要另辟它径了,我们知道IP层的IP地址可以唯一标示主机,而TCP层协议和端口 阅读全文
posted @ 2021-07-20 15:39 Gnomeshghy 阅读(37) 评论(0) 推荐(0)
摘要: 一、mixins机制 1、分主类和辅类, 继承辅类就有该辅类的功能, 不影响子类使用 2、命名方式:以mixin, able 为结尾 3、一般辅类的位置在主类的左边 1 class Vehicle: # 交通工具 2 def run(self): 3 pass 4 def run1(self): 5 阅读全文
posted @ 2021-07-15 21:18 Gnomeshghy 阅读(49) 评论(0) 推荐(0)
摘要: 一、单继承下的属性查找 1 class Foo: 2 def f1(self): 3 print("Foo.f1") 4 5 def f2(self): 6 print("Foo.f2") 7 self.f1() # self => obj 8 9 10 class Bar(Foo): 11 def 阅读全文
posted @ 2021-07-14 20:13 Gnomeshghy 阅读(40) 评论(0) 推荐(0)
摘要: 一、绑定方法 绑定方法两种: 1、绑定给对象 1 # 绑定给对象的 2 class Student(): 3 country = 'CHINA' 4 5 def __init__(self, name, age): 6 self.name = name 7 self.age = age 8 9 de 阅读全文
posted @ 2021-07-14 14:58 Gnomeshghy 阅读(52) 评论(0) 推荐(0)
摘要: 一、面向过程 面向过程:不是一门技术,是一种编程思想,其核心是过程两个字。过程就是先干什么,再干什么,最后干什么,类似于机器师思维 案例: 把大象关进冰箱 1、打开冰箱 2、把大象放进去 3、关闭冰箱 优点:复杂的问题流程化,简单化 缺点:扩展性差,可维护性差 1 """ 2 问题: 3 实现用户注 阅读全文
posted @ 2021-07-12 20:38 Gnomeshghy 阅读(50) 评论(0) 推荐(0)