柬埔寨大象自然公园的一周

缘起 19年国庆时无意在豆瓣上看到一个人写因为母亲去世想排解一些内心的伤痛而去泰国的大象自然公园度过一周,无意勾起了我对奶奶的思念。这个陪伴我

MySQL事务隔离

四种隔离级别 读未提交(read uncommitted): 事务还未提交时能被其他事务看到 读提交(read committed): 事务提交后才能被

Python标准库io和select

三种I/O类型 Binary: expects and produces bytes objects, 不会编解码,不会换行 Text: expects and produces str objects, 自动编解码和换行 Raw(unbuffered): uilding-block for binary and text streams 底层类 抽象基类IOBase: 无read

Asyncio主要类和方法一览

events Handle 基本属性: loop, context, call_back, args run: 执行call_back TimeHandle: 带有when到期时间的handle,也用于来比较大小 AbstractServer: 抽象server, 定义start_se

Python标准库heapq

底层设计: 完全二叉树(除了最后一层,其他层都是满的,最后一层的节点都靠左排列) 每个节点的值都小于等于左右子节点的值 使用list存储 入堆hea

Python标准库之并发相关库

threading Lock: 可被其他线程释放 .RLock: 与Lock的区别在于可被锁拥有者多次获取,只能被被锁拥有者释放,释放次数等于获取次数才算完全释放 Condition: condition实

Python标准库functools

functools主要有3个函数:partial, wraps, lru_cache partial: 利用一个类装饰器把现函数和参数保存起来, 后续调用的时候再补充和更新参数 1 2 3 4 5 6 7

MySQL协议初探及pymysql源码节选

总体交互过程 登录流程 TCP连接建立 1 2 3 4 5 # Connection.connection sock = socket.create_connection((host, port),connection_timeout) sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) sock.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) _rfile = _makefile(sock, 'rb') Server向Client发送Handshake packet:包