• 怎样理解阻塞非阻塞与同步异步的区别?


    看过阿里的《深入java web技术内幕后》觉得这个地方需要改改~~~显然书中的说法更加条理清晰

    所以修改了一下。下面是我的简略笔记

    交互方式:

    1同步异步。

      同步在于两组任务同时完成或者同时不完成,具有原子性。异步在与分头进行,两个任务的成功与否没有关联依赖。简单来说异步不可靠但是效率高。只能平衡不能达到完美。

     

    2阻塞非阻塞。

      阻塞就是CPU在完成任务A之前不进行其他任务,非阻塞就是CPU在做A任务的同时也在做B任务。阻塞能保证任务的优先级次序不被打乱,非阻塞能更大的提升CPU的利用率。

     

    3组合方式。

      同步阻塞:最安全最常用,性能最差,最简单。

      同步非阻塞:提升了IO性能,但是增加CPU消耗,需要考虑CPU的消耗是瓶颈还是IO的性能是瓶颈进行取舍。

      异步阻塞:分布式数据库经常用到能明显提升IO效率。

      异步非阻塞:IO性能最高,但是处理起来非常繁杂。

  • 相关阅读:
    关于树状数组区间最值
    Gym 100500B
    RQNOJ Bus
    关于加权的LIS问题
    vs tip1
    小常识
    我的魔方主力
    killer驱动
    从日升的mecha anime看mecha genre的衰退
    关于供给移动端的视频压制
  • 原文地址:https://www.cnblogs.com/blackdeng/p/9387842.html
Copyright © 2020-2023  润新知