07 2021 档案

摘要:相爱相杀好基友——数组与链表作为线性表的两种存储方式 —— 链表和数组,这对相爱相杀的好基友有着各自的优缺点。接下来,我们梳理一下这两种方式。 数组,所有元素都连续的存储于一段内存中,且每个元素占用的内存大小相同。这使得数组具备了通过下标快速访问数据的能力。但连续存储的缺点也很明显,增加容量,增删元 阅读全文
posted @ 2021-07-27 20:09 狼太白 阅读(45) 评论(0) 推荐(0) 编辑
摘要:python第15天-网络3 TTL:一个数据包,在网络上,经过路由器的最大值 MSL:数据包在网路上存活的时间 常见网络攻击 1. tcp半链接攻击 也叫 SYN Flood (SYN洪⽔)是种典型的DoS (Denial of Service, 拒绝服务) 攻击 2.DNS攻击 2.1 dns服 阅读全文
posted @ 2021-07-21 19:29 狼太白 阅读(263) 评论(0) 推荐(0) 编辑
摘要:UDP广播 广播只能在UDP中使用,TCP中不能用,UDP相当于写信,TCP相当于打电话 192.168.1.0是网络号 192。168.1.255是广播 <broadcast>更通用,这就不限制网段,可以直接这样写 想让一个局域网中的所有电脑都收到数据,就用广播 你上线,其他设备需要知道就用广播 阅读全文
posted @ 2021-07-17 10:57 狼太白 阅读(564) 评论(0) 推荐(0) 编辑
摘要:网络通信概述 网络编程:让在不同的电脑上的软件能进行数据传递,即进程之间的通信。 TCP/IP协议(族) 互联网协议族,把互联网的协议简称为TCP/IP协议。作用:规范网络之间的数据通信。 常用协议见下图 4层:链路层、网络层、传输层和应用层 7层:链路层拆分为数据链路层和物理层,应用层拆分为会话、 阅读全文
posted @ 2021-07-14 23:40 狼太白 阅读(568) 评论(0) 推荐(0) 编辑
摘要:生产者与消费者的解耦问题: 耦合时代码之前联系性很强,不好 解耦: 减少之间的联系 所以第一版本就要想的长远一点 这个例子使用队列作为缓冲部分 #encoding=utf-8import threadingimport timefrom queue import Queueclass Produce 阅读全文
posted @ 2021-07-13 17:17 狼太白 阅读(66) 评论(0) 推荐(0) 编辑
摘要:不管进程还是线程,主都会等着子结束而结束这是因为子进程/线程在执行的时候,会暂用一些资源,主就要收回这些资源 线程是系统调度的基本单位,进程是系统资源的基本单位 主线程会等待子线程结束才结束 import threadingimport timedef sayHello(): print(" ") 阅读全文
posted @ 2021-07-13 09:51 狼太白 阅读(48) 评论(0) 推荐(0) 编辑
摘要:方式1 queue队列 先进先出 进程之间默认是没有关联的,进程间的通信就是解决这个问题 from multiprocessing import Queue, Process这是解决普通进程间的通信 from multiprocessing import Manager, Pool这是解决进程间的通 阅读全文
posted @ 2021-07-07 00:51 狼太白 阅读(59) 评论(0) 推荐(0) 编辑
摘要:进程池的作用就是缓存 进程池与Process区别, 主进程不会等着进程池结束才结束,但是process创建子进程, 先创建进程放在那地方,什么时候用就给你一个进程,用完之后再还回来,增加进程的重复使用率。 进程池避免了重复创建进程的过程 但是 要注意当进程数很多的时候,一个进程执行一会,然后CPU在 阅读全文
posted @ 2021-07-06 17:02 狼太白 阅读(259) 评论(0) 推荐(0) 编辑
摘要:assert self._popen is None, 'cannot start a process twice' Python assert(断言)用于判断一个表达式,在表达式条件为false 的时候触发异常。 断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况 阅读全文
posted @ 2021-07-06 12:55 狼太白 阅读(191) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示