摘要:
1.Event事件的作用: 用来控制线程的执行,由一些线程去控制另一些线程。 2.进程池与线程池。 1)什么是进程池与线程池? 进程池与线程池是用来控制当前程序允许创建(进程/线程)的数量。 2)进程池与线程池的作用 保证在硬件允许的范围内创建(进程/线程)的数量。 3)如何使用: 3.协程 进程:
阅读全文
posted @ 2019-10-24 21:23
wtfss
阅读(108)
推荐(0)
摘要:
1.GIL全局解释器锁 基于CPython来研究全局解释器锁。 1.GIL本质上是一个互斥锁,相当于执行权限,每个进程内都会存在一把GIL。 2.GIL为了阻止同一个进程内多个线程同时执行(并行) 单个进程下的多个线程无法实现并行,但能实现并发。 3.这把锁主要是因为CPython的内存管理不是“线
阅读全文
posted @ 2019-10-23 20:18
wtfss
阅读(118)
推荐(0)
摘要:
写一个基于TCP协议套接字,服务端实现接收客户端的连接并发。
阅读全文
posted @ 2019-10-22 21:43
wtfss
阅读(80)
推荐(0)
摘要:
昨日回顾: 1.多道技术: 单道:多个程序一串串执行。 多道:切换+保存状态。 1)空间上的复用:一个计算机(CPU)的空间可以提供给多个程序使用。 2)时间上的复用: 当前程序遇到IO操作,就会立马切换CPU执行权限。 当前程序使用CPU时间过长,就会立马切换CPU的执行权
阅读全文
posted @ 2019-10-22 20:34
wtfss
阅读(96)
推荐(0)
摘要:
1.粘包问题: 1)无法确认发送数据的大小。 2)短时间内发送多次数据量小并且间隔短的数据会一次性打包发送。 2.struct: 可以将一个很长的数据,压缩成固定的长度。 3.解决粘包问题: 1)通过struct模块弄一个报头,可以把字典压缩成一个报头,发送给服务端。 2)服务端接收到报头后解压缩,
阅读全文
posted @ 2019-10-21 19:56
wtfss
阅读(100)
推荐(0)
摘要:
1.subprocess模块: 可以帮你通过代码执行操作系统的终端命令,并返回终端执行命令后的结果。 2.粘包问题 服务端第一次发送的数据,客户端无法精确一次性接受完毕。下一次发送的数据与上一次数据粘在一起了。 无法预估对方需要接受的数据大小长度。多次连续发送数据量小、并且时间间隔短的数据一次性打包
阅读全文
posted @ 2019-10-18 20:39
wtfss
阅读(149)
推荐(0)
摘要:
1.TCP三次握手、四次挥手图 2.基于TCP开发一款远程CMD程序 客户端连接服务器后,可以向服务器发送命令 服务器收到命令后执行,无论执行是否成功,无论执行几遍,都将执行结果返回给客户端 注意: 执行系统指令使用subprocess模块完成.
阅读全文
posted @ 2019-10-17 22:15
wtfss
阅读(147)
推荐(0)
摘要:
网络编程 并发编程 数据库开发 web前端 1.软件开发架构: 开发软件,必须要开发一套客户端与服务端。 客户端与服务端的作用: 服务端:24小时不间断提供服务 客户端:如果想要找服务,就去寻找服务并享受 软件开发架构分为两种: C/S架构:Client(客户端)Sever(服务端) 优点:
阅读全文
posted @ 2019-10-17 19:43
wtfss
阅读(100)
推荐(0)
摘要:
一、classmethod 翻译:一个类方法。 classmethod是一个装饰器,可以装饰给类内部的方法,使该方法绑定给类来使用。 对象的绑定方法特殊之处 由对象来调用,会将对象当作第一个参数传给该方法。 类的绑定方法特殊之处 由类来调用,会将类当作第一个参数传给该方法。 二、staticmeth
阅读全文
posted @ 2019-10-12 18:33
wtfss
阅读(121)
推荐(0)
摘要:
1、定义MySQL类 (参考答案:http://www.cnblogs.com/linhaifeng/articles/7341177.html _label5) 1.对象有id、host、port三个属性 2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3.提供
阅读全文
posted @ 2019-10-11 21:31
wtfss
阅读(153)
推荐(0)