C++到Python学习浅谈 |
您所在的位置:网站首页 › 如何理解io复用 › C++到Python学习浅谈 |
结合python源码剖析这本书和源码(⽤VS能直接编译的)从字节码⼀点点的看python虚拟机的运⾏,函数、类的创建、实例的创建等 学习python标准库,⼀个⼀个的读标准库,这⾥⾯是python⾼质量的代码,这⾥⾯需要结合源码中c写的⼀些模块看,同时需要了解 的知识也很多。 例如threading.py模块,那需要结合_threadmodule.c,知道python互斥锁、递归锁、信号量、事件、线程是如何实现的 socket.py模块结合 socketmodule.c,清楚python socket的底层实现,socket读写、accept、listen、超时等如何实现超时。因为 这些server.py模块的基础 select.py模块需要懂得IO复⽤模型,select/epoll/poll等等,我不知道为什么windows下CPython没有⽤IOCP模型的原因,socket事件 可读、可写、异常等异步IO编程⽅式,是server.py模块的基础。 最让我震撼的是asyncio异步IO结合协程能编写⾼效率的服务器程序,在以往C++开发服务器程序中⼤部分都是⼀个连接请求⼀个线程 (但是连接多了问题就暴露的多了)、可能再好⼀点的是异步IO(如boost::asio库),但是这些⽤C++写起来确实很蛋疼。 标准库读的多了,遇到的问题就很多了,例如abc抽象基类、元类、⾃定义元类,然后再结合CPython源码寻找答案。 重写的__***___函数是如何覆盖掉CPython本⾝定义的slot的等 说的⽐较杂,希望⾃⼰也再接再厉,克服困难,把Python变成⾃⼰的武器 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |