同步、异步与阻塞、非阻塞概念理解与区别

 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)

四种调用模式:

同步:所谓同步,就是在发出一个功能调用时,在没有得到结果前,该调用就不返回。也就是必须一件

一件做事,等前一件做完了才能做另一件。

例如在C/S模式的某个流程中,你服务器提交了某个请求,在服务器处理完毕返回结果期间客户端什么

也不能做。

 

异步:异步概念和同步相对。当一个异步过程调用发出后,调用者不会立刻得到结果。调用者在发出

调用后可以继续做自己的事,被调用者通过状态、通知来通知调用者,或者通过回调函数处理这个调用。

 

阻塞:阻塞调用是指调用结果返回前,当前线程会被挂起(当前线程处于非可执行状态,在这个状态下,

CPU不会给线程分配时间片,即线程暂停运行),函数只有在得到结果后才回返回。

 

非阻塞:非阻塞和阻塞的概念相对,是指不能立刻得到借过前,该函数不会阻塞当前进程,而回立刻返回。

 

区别:有人会把同步和阻塞调用等同起来,实际上他们是不同的,对于同步调用来说,很多时候当前调用

还是激活的,只是从逻辑上当前函数没有返回而已。阻塞的话当前线程会被挂起。


原文:https://www.cnblogs.com/Mr-Zhong/p/4160988.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值