同步与异步、阻塞与非阻塞

一、 同步异步区别

        程序员感知层次IO(也可以认为通信方式不同)

        同步: 当一个同步调用发出后, 需要等待结果返回,才能继续进行后续逻辑。

        异步: 当一个异步调用发出后, 无需等待, 执行结果会通过回调方式传达给调用者。

 

二、 阻塞和非阻塞区别

     线程层次IO,或者操作系统调度单元层次 

       阻塞: 发起请求,挂起线程,等待结果

       非阻塞: 发起请求,不等待结果,结果出来后会回调结果

       

CPU层次IO :  现代操作系统基本都是异步非阻塞方式 ,  OS为了减轻程序员思考负担将底层的异步非阻塞IO方式进行了封装。  把相关系统调用(read, write等)以同步方式展现出来

posted @ 2017-10-13 14:01  kaiden  阅读(130)  评论(0编辑  收藏  举报