摘要: 数据库总结 什么是数据库 数据库即存放数据的仓库 数据库是长期存放在计算机内的有组织的可共享的数据集合 优点 数据稳定性:一套服务所在的机器崩溃了不会影响数据和另外的服务 数据一致性:所有数据一起,所有程序操作的数据都是统一的 并发:良好的支持并发 效率:使用数据库对数据进行增删改查的效率高很多 关 阅读全文
posted @ 2019-07-17 21:35 蜗牛少少 阅读(202) 评论(0) 推荐(0) 编辑
摘要: select 的问题: 1.当进程被唤醒不清楚到底哪个socket有数据,只能遍历一遍 2.每一次select的执行,都需要将这进程,再加入到等待队列中 为了防止重复添加等待队列,当某一次操作完成时,也必须从等待队列中删除进程 所以select最大限制被设置为了1024 ,如此看来select连多线 阅读全文
posted @ 2019-07-16 15:27 蜗牛少少 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 回顾 线程队列 1.Queue 与进程队列没啥区别 2.LifoQueue 模拟栈这种结构 先进后出 3.PriorityQueue 具备优先级的队列 比较越小的优先级越高 无法存储自定义对象 因为自定义对象不具备 比较大小的方法 __lt__ __gt__ 解决方法 即给这个类 添加这两个方法的其 阅读全文
posted @ 2019-07-16 15:24 蜗牛少少 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 上周回顾 并发 并发的概念 串行导致效率低 并发的原理 多道技术 1.空间复用 将内存划分为不同的区域,互相隔离,存入不同的程序数据 2.时间服用 切换+保存状态 切换: 遇到IO操作,或者某个人物执行时间超过阈值 并发的实现方法 多进程 多线程 协程 进程 只一个正在运行的程序 程序的三种状态 阻 阅读全文
posted @ 2019-07-08 18:25 蜗牛少少 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 1.一堆锁 死锁现象 **** 死锁指的是 某个资源被占用后一直得不到释放 导致其他需要这个资源的线程进入阻塞状态 产生死锁的情况: 1.对同一把互斥锁 加锁了多次 2.一个共享资源 要访问必须同时具备多把锁,但是这些锁被不同线程或进程所持有 , 就会导致相互等待对方释放 从而程序就卡死了 第二种的 阅读全文
posted @ 2019-07-07 10:00 蜗牛少少 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 1.生产者消费者模型 模型就是解决某个问题的固定方法和套路 1.1要解决什么问题 生产者:泛指产生数据的一方 消费者:泛指处理数据的一方 案例: 食堂饭店是生产者 吃饭的人就是消费者 问题: 效率低,双方速度不同,可能一个快一个慢,双方需要互相等待 具体解决方法: 先将对方揭开耦合,让不同的进程负责 阅读全文
posted @ 2019-07-05 20:58 蜗牛少少 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 守护进程 了解 什么是守护进程 在python中 守护进程也是一个进程, 默认情况下 主进程即使代码执行完毕了 也会等待子进程结束才会结束自己 当一个进程b设置为另一进程a的守护进程时 a是被守护 b是守护进程 特点是: 当被守护a 结束时,即使b的任务没有完成也会随之结束 比喻: 康熙 是一个进程 阅读全文
posted @ 2019-07-04 08:46 蜗牛少少 阅读(113) 评论(0) 推荐(0) 编辑
摘要: # ************************************# 守护进程 用处,将保护的进程独立出来与之前的环境数据隔离,但会随着主程序的终止而结束# from multiprocessing import Process# import time## def task():# pr 阅读全文
posted @ 2019-07-03 18:54 蜗牛少少 阅读(132) 评论(0) 推荐(0) 编辑
摘要: # # ************************************************# # 创建多进程方式# import os# from multiprocessing import Process## def task():# print('this is sub proc 阅读全文
posted @ 2019-07-02 21:42 蜗牛少少 阅读(1219) 评论(0) 推荐(0) 编辑
摘要: while True: 发出ls请求连接 client.send('ls'.encode('utf8')) file_list = client.recv(1024) print('请选择文件下载:') # 解压缩出列表 file_list = eval(file_list.decode('utf8 阅读全文
posted @ 2019-07-01 19:33 蜗牛少少 阅读(143) 评论(0) 推荐(0) 编辑