美文网首页
关于同步异步阻塞非阻塞的区别

关于同步异步阻塞非阻塞的区别

作者: 九号锅炉 | 来源:发表于2019-05-24 14:39 被阅读0次

同步和异步的区别:
A调用B方法,如果B是同步的,需要等到B执行结束之后再返回通知A;而如果B是异步的,B立刻返回,等B执行结束之后再通过回调通知A。
阻塞和非阻塞的区别:
A调用B方法,如果是阻塞的,A需要一直等待B结束不能做别的事情;如果非阻塞,在B执行过程当中A可以接着去做别的事情。
同步异步的核心在于被调用方B是否立刻返回,与调用方A没有关系。
而阻塞非阻塞的核心在于调用法A在B执行期间是否可以去做别的事情。
因此同步和阻塞 异步和非阻塞是不一样的,他们描述的主体都不一样。
同步也可以是非阻塞的,比如在A调用B时,A可以接着做别的事情(非阻塞),但是B结束之后不会主动通知A(同步);
异步可以是阻塞的,A调用B时,A不可以去做其他事情,B立刻返回,等B结束之后在通知A。
因此最好的方式是异步非阻塞,A调用B时可以接着去做别的事情,等B结束之后再通知A。

Java中提供了三种I/O方式:
BIO(Blocking I/O):同步阻塞
NIO(New I/O):同步非阻塞,通过线程不断论询的方式判断I/O是否结束
AIO:异步非阻塞。

相关文章

  • 谈论:同步异步阻塞非阻塞.md

    同步/异步:关注的方式(是否主动) 阻塞/非阻塞: 同步阻塞BIO: 同步非阻塞NIO: 异步非阻塞: 异步阻塞:

  • 同步阻塞IO,同步非阻塞IO,异步阻塞IO,异步非阻塞IO

    同步,异步 和 阻塞,非阻塞之间的区别? 同步,异步,是描述被调用方的。阻塞,非阻塞,是描述调用方的。 同步不一定...

  • UNIX 的5种IO模型介绍

    IO模型同步、异步、阻塞、非阻塞socket阻塞与非阻塞,同步与异步 同步和异步 同步/异步主要针对C端-同步就像...

  • Linux网络IO模型

    什么是同步与异步、阻塞与非阻塞 引用知乎 怎样理解阻塞非阻塞与同步异步的区别? 上面的一个回答,很生动的说明了同步...

  • BIO NIO AIO

    BIO:同步阻塞IONIO:同步非阻塞IOAIO:异步非阻塞IO先弄清楚同步、异步,阻塞、非阻塞概念。 io操作分...

  • 阻塞非阻塞 同步异步 IO模型及其应用 NIO实现原理

    1.同步异步概念 2.阻塞非阻塞概念 3.常见I/O模型:同步阻塞IO,同步非阻塞IO,异步阻塞IO,异步非阻塞I...

  • IO模型

    原文参考链接 四种状态 同步 异步 阻塞 非阻塞 IO分类 同步阻塞IO 同步非阻塞IO 异步非阻塞IO注意: 没...

  • IO模型

    同步,异步,阻塞和非阻塞的概念与区别 同步和异步从消息通知机制角度来说的。 两个任务 同步一直等,异步不等 阻塞和...

  • 阻塞,非阻塞,同步,异步

    阻塞,非阻塞,同步,异步

  • 同步、异步、阻塞、非阻塞,这下明白了

    同步阻塞,同步非阻塞,异步阻塞,异步非阻塞... 晕! 头! 转! 向! 对于小白来说,理解这些概念太难了。搜索这...

网友评论

      本文标题:关于同步异步阻塞非阻塞的区别

      本文链接:https://www.haomeiwen.com/subject/bmpgzqtx.html