• ~~并发编程(七):重要方法~~


    进击のpython

    *****

    并发编程——线程理论


    前面讲的是进程的相关理论部分

    从本节开始,就是对线程的相关知识的研究了

    本节对线程进行一个定义,知道什么是线程

    以及横向对比进程,知晓两者的不同点


    什么是线程

    线程是执行程序的最小单位

    举个例子:

    老师让你读一本书,那么这个书可以看作是进程,而你读书的这个过程就是线程

    线程就是用来执行程序的,那么就可以这么想

    每开一个进程是不是就要执行该进程,而执行程序的最小单位是线程

    所以每开一个进程,随之而来的就是自动开一个线程

    进程将资源都聚合起来,然后给线程执行

    多线程就是在一个进程里存在多个线程,多个线程共享这个进程里面的资源

    就好像班级同学一起读投影仪上的文章一样,投影仪上的文章就是进程里面的资源

    全班同学就是一个一个的线程,几乎同时来执行读书这个‘任务’


    线程VS进程

    线程和进程的区别,主要体现在以下这六个方面:

    1.线程共享创建它的进程的地址空间;进程有自己的地址空间

    2.线程可以直接访问其进程的数据段;进程有自己的父进程数据段副本

    3.线程可以直接与其进程的其他线程通信;进程要使用进程间通信与兄弟进程通信

    4.新线程很容易创建;新进程需要父进程的重复

    5.线程可以对同一进程的线程进行相当大的控制;进程只能对子进程进行控制

    6.对主线程的更改(取消、优先级更改等)可能会影响进程的其他线程的行为;

    对父进程的更改不会影响子进程

    其实总结起来,就两个关键:

    1.线程共享进程的数据

    2.创建线程开销远小于进程


    *****
    *****
  • 相关阅读:
    MySQL_创建数据库和表
    MySQL注释的3中方法
    子查询概念和分类
    弱网测试如何进行
    Fiddler_ 移动端抓包配置IOS&Android,Fiddler获取APP端的流量
    Fiddler_HTTPS 如何抓包和浏览器设置
    Fiddler_弱网测试
    Three.js 游戏操作案例
    flex 教程
    JS知识
  • 原文地址:https://www.cnblogs.com/jevious/p/11402297.html
Copyright © 2020-2023  润新知