现在多进程多线程已经是老生常谈了,协程也在最近几年流行起来。python中有协程库gevent,py web框架tornado中也用了gevent封装好的协程。本文主要介绍进程、线程和协程三者之间的区别。 一、概念 1、进程 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进 ...
分类:
编程语言 时间:
2018-05-23 12:29:43
阅读次数:
225
apache的三种MPM及配置方式 首先,MPM是Multi-Processing Modules,表示Apache中的多路处理模块,目前在Linux上的Apache 2.2/2.4中包括三种模式:prefork、worker和event模式。 1.worker worker 是多进程多线程模型,一 ...
分类:
Web程序 时间:
2018-05-23 02:27:49
阅读次数:
249
socketserver = 多进程 + 多线程 + IO模型 一、上节课复习及作业讲解 a、spawn用法复习 from gevent import monkey,spawn;monkey.patch_all() import time def f1(): print('from f1 1') t ...
分类:
编程语言 时间:
2018-05-02 22:15:44
阅读次数:
249
GIL 多进程多线程使用场景 线程互斥锁与GIL对比 基于多线程实现并发的套接字通信 进程池与线程池 同步、异步、阻塞、非阻塞 ...
分类:
编程语言 时间:
2018-04-27 16:47:39
阅读次数:
226
鱼还是熊掌:浅谈多进程多线程的选择 关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”,这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有这么简单了,选的不好,会让你深受其害。 经常在网络上看到有的XDJM问“多进程好还是多线程好? ...
分类:
编程语言 时间:
2018-04-22 10:53:44
阅读次数:
120
引子 到目前为止,我们已经学了网络并发编程的2个套路, 多进程,多线程,这哥俩的优势和劣势都非常的明显,我们一起来回顾下 协程 协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保 ...
分类:
其他好文 时间:
2018-04-08 15:54:30
阅读次数:
187
1、单线程web服务器 此种架构方式中,web服务器一次处理一个请求,结束后读取并处理下一个请求。在某请求处理过程中,其它所有的请求将被忽略,因此,在并发请求较多的场景中将会出现严重的必能问题。 2、多进程/多线程web服务器 此种架构方式中,web服务器生成多个进程或线程并行处理多个
分类:
Web程序 时间:
2018-04-01 11:47:15
阅读次数:
139
第一次写博客。。。最近发现很多技术的东西看了很快又忘了,希望通过自己的理解写出来,我想这是一种方法吧。前段时间去面试linux软件,面试官问我多线程和多进程有什么优缺点,什么时候使用多进程,多线程,当时就懵逼。其实之前有在网上看到过这个问题和答案,然后略看了一眼,没有真正去了解。如果现在有人问我这个问题我怎么回答呢,我想我有我自己的答案了。首先多进程之间内存是隔离的,所以同步比较简单,但是进程间的
分类:
编程语言 时间:
2018-03-27 17:23:31
阅读次数:
232
多进程、多线程在不同环境下的操作 多进程:Linux创建进程是操作系统把父进程的东西拷贝到子进程 Windows创建进程类似于模块导入 Linux环境下开启多进程,可以用os里的fork windows环境下开启多进程,注意要写 if __name__ == '__main__': 不然会一直创建子 ...
分类:
编程语言 时间:
2018-03-23 12:59:40
阅读次数:
241
# 多线程和多进程 进程:操作系统分配内存的基本单位,进程之间的通信相互隔离,如果要相互交换数据,需要特殊的机制。 线程:一个进程由至少一个线程组成,线程是进程的执行单元,也是操作系统分配CPU的基本单元。 多线程,是为了多的被CPU所启动。 优点: 1.缩短程序的执行时间,提升性能 2.改善用户的 ...
分类:
编程语言 时间:
2018-03-20 19:46:30
阅读次数:
168