zoukankan      html  css  js  c++  java
  • 同步异步单线程多线程初级理解

    对于我开始接触同步异步单线程多线程的概念的时候,都是分别理解同步和异步、单线程和多线程概念,当看到“使用同步方法保证线程安全”时愚昧的理解为那就是单线程咯;于是就陷入了困惑,同步等于单线程吗?

    下面是我自己不成熟的理解,理解的不是很全面,大家仅供参考,看看就好,欢迎批评改正,深刻的理解我会努力学习,日后再整理,多多包容。

    同步:等待执行结束之后,再执行;
    异步:可以不管不顾,同一时间,一起执行;

    单线程:只有一个线程;
    多线程:有多个线程;

    同步!= 单线程 异步!=多线程

    举例:
    1:
    多线程:小明可以边吃饭边看电视剧 ;
    单线程:小明只睡觉;

    2:
    同步:小明吃饭,小明吃完啦,爸爸吃; 针对饭;
    异步:小明吃饭,同时爸爸也吃饭; 针对饭;

    3:
    小明边吃饭边看电视 ,同时,爸爸专心吃饭;

    小明:多线程;
    爸爸:单线程;
    饭:异步 (爸爸和小明一起吃饭,小明爸爸都吃不饱);

    4:
    小明边吃饭边看电视 ,吃完了;爸爸专心吃饭;

    小明:多线程;
    爸爸:单线程;
    饭:同步(爸爸怕小明饿着,先让小明吃,小明饱了,吃完了,爸爸再吃);

    5:
    小明边吃饭边看电视 ,吃完了;爸爸再吃饭,也是边吃饭边看电视;

    小明:多线程;
    爸爸:多线程;
    饭:同步;
    电视:异步;

    6:小明爸爸同时边吃饭边看电视

    小明:多线程;
    爸爸:多线程;
    饭:异步;
    电视:异步;

    以上几个例子中小明和爸爸类似于两个不同进程,饭、电视类似于资源,不同进程访问不同资源方式不同,同步异步和单线程多线程比较的维度不同。
  • 相关阅读:
    探索式测试实践之路
    管理是什么?真正的管理者是,“管”+“理”!
    JavaScript中的函数式编程
    node js的终端中 console.log 嵌套对象会被折叠的问题
    apt-get install的默认安装路径
    nodejs 事件循环 试题思考
    仅20行的JavaScript模板引擎
    js 驼峰命名转烤串
    git reset 进阶
    linux 拷贝文本到剪切板
  • 原文地址:https://www.cnblogs.com/Isabella-CC/p/8269514.html
Copyright © 2011-2022 走看看