同步与异步,阻塞和非阻塞的区别

来源:互联网 发布:霜叶知秋的意思 编辑:程序博客网 时间:2024/06/07 15:05
  1. 同步与异步

    同步与异步关注的是消息通信机制
    同步即在发送一个调用请求后,在没有得到结果之前,请求不返回。即请求者主动等待请求的结果。
    异步则是请求发送成功之后,这个调用直接返回,无需等待结果,被调用者通过状态来通知请求者,后回调函数处理这个调用。

  2. 阻塞和非阻塞

    阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态
    阻塞调用是指在调用结果返回之前,线程会被挂起,不继续处理其他应用;而非阻塞调用时在不能立即返回结果之前,该调用不会阻塞当前线程。
    同时在处理IO请求的时候,阻塞和非阻塞都是同步IO;只有使用了特殊的API才是异步IO。

原创粉丝点击