摘要: 1.线程为什么要有锁: 全局解释器锁GIL 不能完全确保数据的安全(时间片轮转法) 线程之间等的数据安全问题: +=,-=赋值操作不安全 不涉及赋值操作的数据是安全的 不安全: 加锁: 2:互斥锁与递归锁 死锁现象: 两把锁 异步的 操作的时候,一个线程抢到一把锁之后还要再去抢第二把锁 一个线程抢到 阅读全文
posted @ 2018-09-25 21:42 俏如來 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 1,数据共享:from multiprocessing import Manager 把所有实现了数据共享的比较便捷的类都重新又封装了一遍,并且在原有的multiprocessing基础上 增加了新的机制 :dict ,list 2数据共享的机制: 支持的数据类型非常有限 list,dict数据是不 阅读全文
posted @ 2018-09-25 21:01 俏如來 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 1,队列:填值,取值 put,get put_nowait,get_nowait 2.生产者消费模型: 3:进程池:开启过多的进程并不能提高效率,反而会降低效率. 过多的进程,会造成阻塞,占用内存,操作系统需要对这些进程分配到各个CPU中进行处理 计算机两种类型: 计算型:会充分占用CPU:写的程序 阅读全文
posted @ 2018-09-20 19:39 俏如來 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 1:第二种开启子进程的方法: 守护进程:p.daemon = True 主进程会等待所有的子进程才会结束,主进程负责回收子进程的资源 守护进程会 随着主进程代码执行完毕后而结束,还没有执行完毕的子进程,不会再继续执行 进程锁: 加锁: 为了保证数据的安全, 在异步的情况下,多个进程又可能同时修改同一 阅读全文
posted @ 2018-09-19 19:35 俏如來 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 1:操作系统 多道操作系统 有多个程序在操作系统中运行 当一个程序遇到IO操作的时候就把CPU让出来给其他程序使用 分时操作系统 时间片 不是遇到IO操作时让出CPU,而是时间到了就让出CPU 切换程序需要时间,单纯的分时系统没有提高CPU的利用率,但是提高了用户的使用体验 实时系统 个人计算机操作 阅读全文
posted @ 2018-09-18 16:30 俏如來 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 1.客户端的链接合法性验证: 恶意的登录:扫描端口(0-65535) tcp没有做登录客户端时: 使用hmac生成对随机字符串的摘要 2:socketserver模块; tcp协议,一个服务端同时与对个客户端同时通信 阅读全文
posted @ 2018-09-17 17:21 俏如來 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 1.粘包现象: tcp是流式传输,是字节流,数据传输之间是没有边界的 流式传输的特点:不限传输长度,可靠传输 tcp协议的特点:慢(因为有回执),和一个conn连接通信,会一直占用通信资源 udp协议: 面向数据包的传输 数据包内容:自己的ip,mac,port 和要发送对象的ip,mac,port 阅读全文
posted @ 2018-09-17 16:28 俏如來 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1.tcp通讯 serve端 client 端 2.udp协议通讯 serve 端 client 端 阅读全文
posted @ 2018-09-13 17:07 俏如來 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 1:网络编程: 同一台机器上的两个程序之间的通讯,可以通过文件操作来实现 不同机器上的程序之间实现通讯,需要通过网络来实现: 2:网卡:身份证,mac地址,计算机在网络上的身份证 mac地址,,16机制,全球唯一 3:交换机:同一网络层内的多台机器之间的信息交换 4:ip地址:IPV4与IPV6:目 阅读全文
posted @ 2018-09-12 19:52 俏如來 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 1.验证用户输入内容: 2.切割.split 3.comple 编译正则规则 4.finditer 节省空间,,较小时可以使用findall,大时使用finditer ?:正则表达式,表示取消优先显示功能 ?P=<>组名,表示引用前面的组的名字,引用部分匹配到的内容必须和之前的那个组的内容一模一样 阅读全文
posted @ 2018-09-11 17:11 俏如來 阅读(108) 评论(0) 推荐(0) 编辑