美文网首页程序员
同步异步、阻塞非阻塞

同步异步、阻塞非阻塞

作者: 万丰路甲一号 | 来源:发表于2017-12-07 09:16 被阅读35次

    标签:同步异步、阻塞非阻塞
    这个问题也许困扰我们了,今天就举个列子好好说道说道。
    同步:就是自己主动查询,并且得到返回结果;‘
    异步:自己被动的等待结果
    阻塞:在结果返回之前,程序一直在等待(被挂起)
    非阻塞:在结果返回之前,程序不等待不挂起,该干别的干别的。
    举例:
    1.老张烧了一壶水(普通的水壶,开了之后不会主动提醒的),假如老张一直在水壶旁边等着,直到水开-----这就是同步阻塞
    2.当然老张知道水也不是一时半会就能开的,于是乎,他继续到客厅继续追着他喜爱的《人民的名义》,当然正事不能忘,于是,他还是要时不时回来看看水开了没有---这就是同步非阻塞(一边烧水一边看电视,但还是得自己主动去看水壶)
    3.有一次老张看电视剧看得入迷,水开了很久才去看的,这样子老张自责了很长时间,但是老张的儿子比较聪明和孝顺,第二天就给他换了一个水开会呜呜直叫的水壶,这下子老张可轻松多了,只用专心看他的《人民的名义》了,只需要等待水壶叫唤,直接去关火就行了----这就是异步非阻塞(等待通知,还可以同时看着电视)
    4.当然,我们不会相信老张此时还会在这么好的热水壶之前,非得守着水开(异步阻塞)
    其实同步异步是对水壶而言,看它可不可以主动提醒,而同步面对的情况就是必须程序主动查询才能返回结果(老张必须主动去看才能知道水开);
    阻塞非阻塞就是同时干别的事情没有。

    相关文章

      网友评论

        本文标题:同步异步、阻塞非阻塞

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