摘要: http://blog.csdn.net/i2cbus/article/details/23555063 大牛写的博客地址 总结摘录下: 1 Python的GIL在单核情况下对性能的影响可以忽略不计,几乎没有。 2 Python由于其GIL的存在在多核CPU的情况下Thread的表现真的是非常的糟糕 阅读全文
posted @ 2017-10-13 16:50 骑者赶路 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 线程 进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派CPU的基本单位。在单个进程中同时运行多个线程完成不同的工作,称为多线程。 同一进程内的多个线程是共享该进程的资源。 创建新的线程开销要远远小于开启新的进程。 threading模块 线程的threading模块与进程的multipr 阅读全文
posted @ 2017-10-13 16:36 骑者赶路 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 生产者与消费者模型 生产者与消费者两个子进程,同时开启,通过队列q,进行数据上的通信。q在主进程创建,作为参数传给生产者,消费者两个子进程。 程序中两类角色:生产者,消费者。 功能:通过引用第三方队列q,平衡生产者与消费者之间的速度差异。 分布式系统 分布式系统(distributed system 阅读全文
posted @ 2017-10-12 17:32 骑者赶路 阅读(825) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2017-10-10 19:43 骑者赶路 阅读(374) 评论(0) 推荐(0) 编辑
摘要: sockerserver模块 socketserver针对服务器,没客户端的事。 这样,服务端通过多线程实现了并发。 socketserver模块实际上隐藏了链接循环,通讯循环。 阅读全文
posted @ 2017-09-27 17:19 骑者赶路 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 一粘包 TCP协议是面向对象的,面向流的,提高可靠性服务。使用了优化算法,Nagle算法。将多次间隔较少且数据量小的数据,合并成一个大的数据块,然后进行封包。这样接收端就很难分辨出来。TCP协议数据是可靠的,但是会粘包。 问题的关键是另一端并不知道你要传多少字节的数据,处理办法是必须先传一个报头,告 阅读全文
posted @ 2017-09-26 14:01 骑者赶路 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 一 网络基础 互联网协议按照功能不同分为osi七层或者ip/tcp五层,ip/tcp四层。 数据链路层:有个以太网协议,ethernet,一组电信号称为一个数据报,也叫帧。ethernet规定接入internet的计算机都必须有网卡,发送端和接收端的地址就是网卡地址,也就是MAC地址。 网路层:规定 阅读全文
posted @ 2017-09-25 17:32 骑者赶路 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 一 反射的基本概念 1 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力。 最根本的就是,操作字符串,根据字符串找到相应的属性,映射到真正的功能上。 反射说简单点 --> 就是利用字符串的形式去对象(模块)中操作(寻找/检查/删除/设置)成员。 示例一 输出: getattr(x, 'y' 阅读全文
posted @ 2017-09-23 22:54 骑者赶路 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 一 hashlib模块 输出: 输出: 二 logging模块 输出: 三 subprocess模块 subprocess:子流程 Popen类: 官方定义: Execute a child program in a new process.在新流程中执行子程序。 输出: stdout,stdin的 阅读全文
posted @ 2017-09-22 20:18 骑者赶路 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 一 私有静态属性,私有方法,私有属性 输出: 私有是在定义阶段变量名前加上__。查看__dict__,会发现实际存储的是 _类名__属性名。 调用阶段__变量名,就没有你什么事了,该咋地咋地。 PS 私有方法的用处: 1 有一些方法的返回值只是用来作为中间结果 2 父类的方法不希望子类继承,子类没法 阅读全文
posted @ 2017-09-20 13:53 骑者赶路 阅读(147) 评论(0) 推荐(0) 编辑