摘要: Python 是编译型语言还是解释型语言?回答这个问题前,应该先弄清楚什么是编译型语言,什么是解释型语言。 所谓编译执行就是源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下次运行时无需重新编译。 不过它是针对特定CPU体系的,这些目标代码只能在特定平台执行,如果这个程序需 阅读全文
posted @ 2017-12-05 23:22 ZhuGaochao 阅读(19080) 评论(0) 推荐(3)
摘要: 0x01 前导 如何基于单线程来实现并发? 即只用一个主线程(可利用的cpu只有一个)情况下实现并发; 并发的本质:切换+保存状态 cpu正在运行一个任务,会在两种情况下切走去执行其他的任务(切换由操作系统强制控制),一种情况是该任务发生了阻塞,另外一种情况是该任务计算的时间过长 ps:在介绍进程理 阅读全文
posted @ 2017-12-05 23:03 ZhuGaochao 阅读(350) 评论(0) 推荐(0)
摘要: 一 介绍 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成可执行代码。 有名的编译器例如GCC,INTEL C++,Visual C++等。Python也一样,同样 阅读全文
posted @ 2017-12-05 21:58 ZhuGaochao 阅读(448) 评论(0) 推荐(0)
摘要: 前导理论知识见:python并发编程&多线程(一) 一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性 官网链接:https://docs.python.org/3/library/threading.html?hig 阅读全文
posted @ 2017-12-05 19:34 ZhuGaochao 阅读(878) 评论(0) 推荐(0)
摘要: 本篇理论居多,实际操作见: python并发编程&多线程(二) 一 什么是线程 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 车间负责把资源整合到一起,是一个资源单位,而一个车间内 阅读全文
posted @ 2017-12-05 19:06 ZhuGaochao 阅读(1433) 评论(0) 推荐(1)
摘要: 前导理论知识见:python并发编程&多进程(一) 一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看本机核数),在python中大部分情况需要使用多进程。 Python提供了multiproces 阅读全文
posted @ 2017-12-05 18:54 ZhuGaochao 阅读(7935) 评论(0) 推荐(2)
摘要: 本篇理论居多,实际操作见: python并发编程&多进程(二) 一 什么是进程 进程:正在进行的一个过程或者说一个任务。而负责执行任务则是cpu。 举例(单核+多道,实现多个进程的并发执行): 二 进程与程序的区别 程序仅仅只是一堆代码而已,而进程指的是程序的运行过程。 举例: 需要强调的是:同一个 阅读全文
posted @ 2017-12-05 16:19 ZhuGaochao 阅读(1239) 评论(0) 推荐(0)
摘要: 介绍 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”,中文称『魔术方法』,例如类的初始化方法 __init__ ,Python中所有的魔术方法均在官方文档中有相应描述,但是对于官方的描述比较混乱而且组织比较松散。很难找到有一个例子。 推荐阅读: Pytho 阅读全文
posted @ 2017-11-30 18:42 ZhuGaochao 阅读(3131) 评论(0) 推荐(1)
摘要: 一 客户端/服务器架构 客户端(Client)服务器(Server)架构,即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件C/S架构(web服务) 理想/目标状态—— 最常用的软件服务器是 Web 服务器。一台机器里放一些网页或 Web 应用程序,然后启动 服务。这样的服务器的任务就是接受 阅读全文
posted @ 2017-11-30 18:18 ZhuGaochao 阅读(639) 评论(0) 推荐(0)
摘要: 为什么要有操作系统 现代的计算机系统主要是由一个或者多个处理器,主存,硬盘,键盘,鼠标,显示器,打印机,网络接口及其他输入输出设备组成。 一般而言,现代计算机系统是一个复杂的系统。 其一:如果每位应用程序员都必须掌握该系统所有的细节,那就不可能再编写代码了(严重影响了程序员的开发效率:全部掌握这些细 阅读全文
posted @ 2017-11-30 16:57 ZhuGaochao 阅读(503) 评论(0) 推荐(1)