zoukankan      html  css  js  c++  java
  • 进程、线程、协程、进程池

    线程

    一个人,他有三个思想。第一个思想是做饭,第二个思想是烧水,第三个思想是洗衣服。这三个思想就是三个线程。

    一个人不能同时干三件事。这三个线程具有竞争性,谁赢了这个人就先做这件事。

    比如做饭这个线程赢了,这个人就先做饭,做完饭后洗衣服这个线程赢了,这个人接着就洗衣服。。。

    进程

    有10个人,每个人都能干一件事,一个人工作就叫一个进程。10个人同时工作就叫10个进程。电脑内核有几核就可以最大开几个进程。

    因此,一个进程可以有多个线程,一个进程也可以有多个协程。

    协程

    一个人,他有三个思想。第一个思想是做饭,第二个思想是烧水,第三个思想是洗衣服。这三个思想就是三个协程。

    同样他也不能同时干三件事。协程与线程的区别就是这三个协程没有竞争性。这个人在做事之前协程就已经安排好了先做某件事再做某件事。

    协程比线程好。

    进程池

    假如一个池子里可以有8个进程同时工作。一共有100个进程。进程池有一个while死循环,用来检测池子里的进程的状态码是否是完成的状态,如果是完成的状态,那么就把完成的进程移出池子,然后再把新的进程移进来,使得池子里一直保持8个状态为工作中的进程。开始工作时,前8个进程进入进程池工作,当某个进程完成后,它的状态码会变为完成。当死循环检测到这个进程的状态是完成的时候,池子就会移出这个进程,然后让新的进程进来工作。这就是进程池的工作原理。

  • 相关阅读:
    念大学有用么摘抄
    天行健,君子以自强不息;地势坤,君子以厚德载物。
    加快播放视频的播放速度
    微信语音通话中无法播放聊天对话框中的视频
    劝学
    在这个世界上就是物竞天择,适者生存。弱肉强食,优胜劣汰?
    英语名言名句集锦
    贵州理科状元邹基伟:不放过上课的每一秒
    带宽的理解
    第二章 Python运行程序
  • 原文地址:https://www.cnblogs.com/weifeng1998/p/13264570.html
Copyright © 2011-2022 走看看