上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 34 下一页
摘要: 一、GIL全局解释器锁 1、引子 在Cpython解释器中,同一个进程下开启的多线程,同一时刻只能有一个线程执行,无法利用多核优势 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。 就好比C++是一套语言(语法)标准,但是可以用不 阅读全文
posted @ 2018-10-01 12:03 foremost 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 一 、守护线程 无论是进程还是线程,都遵循:守护xxx会等待主xxx运行完毕后被销毁 需要强调的是:运行完毕并非终止运行 详细解释: 1、主进程在其代码结束后就已经算运行完毕了(守护进程在此时就被回收), 然后主进程会一直等非守护的子进程都运行完毕后回收子进程的资源(否则会产生僵尸进程),才会结束, 阅读全文
posted @ 2018-09-30 21:10 foremost 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 1、开启速度 在主进程下开启线程比 开启子进程快 2、pid 对比:在主进程下开启多个线程(进程和线程pid相同);在主进程下开启子进程(pid不相同) 3、同一进程内的线程共享该进程的数据(进程之间的地址是隔离的;同一进程内的线程共享该进程的地址空间) 4、Thread对象的其他属性或方法 主线程 阅读全文
posted @ 2018-09-30 20:05 foremost 阅读(217) 评论(0) 推荐(0) 编辑
摘要: thread/英 /θred/ 美 /θrɛd/ 线程 1、threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 2、开启线程的两种方式 2.1、方式一 2.2、方式二 必须有 run函数 3、练习题 3. 阅读全文
posted @ 2018-09-30 17:13 foremost 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1、什么是线程 车间(进程) 流水线(线程) 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程(流水线的工作需要电源,电源就相当于cpu),而一条流水线必须属于一个车间,一个车间的工作过程是一个进程,车间负责把资源整合到一起,是一个资源单位, 阅读全文
posted @ 2018-09-30 16:19 foremost 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1、队列的介绍 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的 创建队列的类(底层就是以管道和锁定的方式实现): Queue([maxsize]):创建共享的进程队列,Queue是多进程安全的队列,可以使用Q 阅读全文
posted @ 2018-09-30 15:05 foremost 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 一、守护进程 主进程创建子进程,然后将该进程设置成守护自己的进程,守护进程就好比崇祯皇帝身边的老太监,崇祯皇帝已死老太监就跟着殉葬了。 关于守护进程需要强调两点: 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemo 阅读全文
posted @ 2018-09-30 12:09 foremost 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 1、查看当前进程的进程号getpid() 和 其父 进程号 getppid() window下: 2、Process对象的join方法 p.join主线程等待P终止(主线程处于等待的状态,而p处于运行的状态) 在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程 阅读全文
posted @ 2018-09-29 22:28 foremost 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 1、简述socket通信原理?什么是socket: Socket是一个网络通信的套接字(接口)socket是应用层和传输层之间的一个抽象层,它把TCP/IP层负责的操作,抽象为几个简单的接口,供应用层调用实现进程在网络中的通信套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。1. 网络通讯三要素:ip地址,端口号。传输协议通信分为客户端和服务端2、粘包的原因和解决办法原因:... 阅读全文
posted @ 2018-09-29 12:02 foremost 阅读(220) 评论(0) 推荐(0) 编辑
摘要: multiprocessing 英 /mʌltɪ'prəʊsesɪŋ/ n. [计][通信] 多重处理 1、multiprocessing 模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu\_count\(\)查看),在python中大部分情况需要使 阅读全文
posted @ 2018-09-28 16:11 foremost 阅读(188) 评论(0) 推荐(0) 编辑
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 34 下一页