• 同步异步单线程多线程初级理解


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    以上几个例子中小明和爸爸类似于两个不同进程,饭、电视类似于资源,不同进程访问不同资源方式不同,同步异步和单线程多线程比较的维度不同。
  • 相关阅读:
    一个JS的问题,请帮下忙!
    开始练习VS2003了
    SQL查询结果的合并问题
    几个微软的好东西!
    对谷歌输入发的一点疑虑
    Visual studio 2005 sdk 安装引起的后果
    Socket协议测试:TPS偏低,和响应时间计算出来的TPS不相符的问题
    数据库索引失效
    挡板模拟器桩模块驱动模块
    nmon 监控结果
  • 原文地址:https://www.cnblogs.com/Isabella-CC/p/8269514.html
Copyright © 2020-2023  润新知