摘要:
python2.x Queue python3.x queue 作用:1、提高效率;2、完成程序的解耦。 队列可以理解为一个有序的容器,但跟列表不同的是,队列里的数据取出来就没有了。 class queue.Queue(maxsize=0) 先入先出 class queue.LifoQueue(ma 阅读全文
摘要:
Event是一个简单的同步的对象。 event = threading.Event() 生成event对象 event.set() 设置标志位 event.clear() 清空标志位 event.wait() 等待标志位被设定(阻塞) event.is_set() 标志位是否被设定 红绿灯模型,假如 阅读全文
摘要:
线程锁(也称互斥锁)是同一时间只允许一个线程在执行,信号量可以用来表示同一时间允许执行的线程的数目。 结果可以看到是五个五个的一起执行 run the thread: 0run the thread: 3run the thread: 4run the thread: 2run the thread 阅读全文
摘要:
GIL锁(Global Interpreter Lock):CPython才会有(是这种解释器的历史遗留问题),Python程序执行前,先获得GIL锁,然后每执行100个指令,解释器就自动释放GIL锁,让别的线程执行。所以,多线程在Python中只能交替执行,同一时间只有一个线程在执行。 Pytho 阅读全文
摘要:
环境:windows10(其它版本应该区别不大) GIt的安装 git-gui(有图形化的操作界面,也支持命令行操作)下载: https://git-scm.com/downloads 图形化界面的使用先跳过(可参考网友的 http://www.cnblogs.com/iruxu/p/gitgui. 阅读全文
摘要:
线程:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程可以并发多个线程,每条线程并行执行不同的任务。 进程:以一个整体的形式暴露给操作系统管理,里面包含对各个资源的调用,内存的管理,网络接口的调用等,对各种资源管理的集 阅读全文
摘要:
paramiko遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接,可以实现远程文件的上传,下载或通过ssh远程执行命令。 文件传输 用paramiko实现: 阅读全文
摘要:
SocketServer是对socket的一个封装,简化socket网络编程。 创建SocketServer的步骤: 1、创建一个请求处理类(基于BaseRequestHandler),并重写父类里的handle方法; 2、实例化TCPServer,传递Server IP和刚刚创建的请求处理类给实例 阅读全文
摘要:
只有TCP会出现粘包,UDP不会。 引发粘包的两种场景: 1、发送端需要等缓冲区满才发送出去,造成粘包(发送数据时间间隔很短,数据量很小,会合到一起,产生粘包) 2、接收方不及时接收缓冲区的包,造成多个包接收(服务端发送了一段数据,客户端只收了一小部分,客户端下次再收的时候还是从缓冲区拿上次遗留的数 阅读全文
摘要:
服务端 客户端 阅读全文