上一页 1 ··· 4 5 6 7 8 9 10 11 下一页
摘要: 多线程 1. 线程 ​ 开启一个进程,操作系统会开辟一个进程空间,将进程的数据资源全部复制一份,然后cpu使线程执行代码。 进程负责开辟空间、加载数据资源,线程负责执行。 2. 线程vs进程 1. 开启进程的开销大; 开启进程的速度满,线程比进程快10—100倍; 3. 同一进程的线程之间可共享数据 阅读全文
posted @ 2019-08-23 17:23 SensorError 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1. 互斥锁 ​ 当多个进程抢占同一数据时,将数据加锁,使进程按串行的方式去获取数据,先到先得,保证了公平、数据的安全。 ​ lock.acquire() # 加锁 ​ lock.release() # 释放 ​ 死锁:连续lock.acquice() 多次,会阻塞进程。 # 模拟三个用户使用同一个 阅读全文
posted @ 2019-08-21 20:19 SensorError 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 多进程 1. 进程创建的两种方式 multiprocessing # 第一种方式 from multiprocessing import Process import time def task(name): print(f'{name} is running') time.sleep(2) pri 阅读全文
posted @ 2019-08-21 20:17 SensorError 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 1. 操作系统 ​ 管理、控制、协调计算机硬件与软件资源的计算机程序。 1.1 作用 将一些对硬件操作的复杂、丑陋的接口,变成简单、清晰的接口。 2. 将多个进程对硬件资源(cpu)的竞态请求变得有序化、合理化。 1.2 操作系统的发展 ​ linux或windows的源代码有五百万行数量级。 计算 阅读全文
posted @ 2019-08-19 19:19 SensorError 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 1. recv 工作原理 1.能够接收来自socket缓冲区的字节数据; 2.当缓冲区没有数据可以读取时,recv会一直处于阻塞状态,知道缓冲区至少有一个字节数据可取,或者客户端关闭; 3.关闭远程端并读取所有数据后,再recv会返回字符串。 2.升级版解决粘包问题 应用层自定义协议FTP(文件传输 阅读全文
posted @ 2019-08-19 19:17 SensorError 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1. 单对单循环通信 ​ send() 和recv()不是一一对应的。 # 服务端 server.py import socket phone = socket.socket() phone.bind = (('127.0.0.1', 8888)) # 绑定本地回环地址/端口号 phone.list 阅读全文
posted @ 2019-08-19 19:16 SensorError 阅读(437) 评论(0) 推荐(0) 编辑
摘要: Socket - 套接字 应用层与TCP/IP协议族通信层(或传输层)之间的抽象层,是一组接口()接收数据;当接口接收数据之后,交由操作系统; 如果数据与操作系统直接交互,会非常麻烦,而socket会将数据进行高度封装/简化在传给操作系统。 socket在python中是一个模块。 # 导入套接字 阅读全文
posted @ 2019-08-19 19:13 SensorError 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 网络协议 1. C/S、B/S 架构 C:client端 B:browse浏览器 S:server 端 1.1 C/S 架构: ​ 基于客户端与服务端之间的通信。 如QQ、抖音等。 ​ 优点:满足个性化设置,响应速度快。 ​ 缺点:开发成本、维护成本高,占用空间,用户固定。 1.2 B/S 架构: 阅读全文
posted @ 2019-08-19 19:06 SensorError 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 异常处理 1. 错误分类 # 1.语法错误: SyntaxError:invalid syntax if 2>3 pass # 2.逻辑错误: 用异常处理 2. 异常 代码出现错误时,代码中断。 # python中常用异常种类: ''' AttributeError 试图访问一个对象没有的树形,比如 阅读全文
posted @ 2019-08-13 22:02 SensorError 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 1. 类的反射 程序对自己内部代码的一种自省方式。 定义:通过字符串取操作对象的方式。 可应用于实例对象、类、本模块、其他模块。 带有点 . 的方式都可用反射方法。 四种方法: 1. hasattr(object, name) # 判断、检测 2. getattr(object, name) # 获 阅读全文
posted @ 2019-08-10 21:13 SensorError 阅读(147) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 下一页