通俗讲解 同步、异步、阻塞、非阻塞 编程

通俗讲解 同步、异步、阻塞、非阻塞 编程#真正意义上的异步IO是说内核直接将数据拷贝至用户态的内存单元,再通知程序直接去读取数据。#select/poll/epoll都是同步IO的多路复用模式1.同步和异步#同步和异步关注的是消息通信机制#所谓同步,就是在发出一个*调用*时,没得到结果之前,该*调用*就不返回。但是一旦调用返回就得到返回值了,*调用者*主动等待这个*调用*的结果#所谓异步,就是在发出一个*调用*时,这个*调用*就直接返回了,不管返回有没有结果。当一个异步过程调用发出后,*被调用者*.

大家好,又见面了,我是你们的朋友全栈君。

# 真正意义上的 异步IO 是说内核直接将数据拷贝至用户态的内存单元,再通知程序直接去读取数据。

# select / poll / epoll 都是同步IO的多路复用模式

1.同步和异步

# 同步和异步关注的是消息通信机制

# 所谓同步,就是在发出一个*调用*时,没得到结果之前,该*调用*就不返回。但是一旦调用返回就得到返回值了,*调用者*主动等待这个*调用*的结果

# 所谓异步,就是在发出一个*调用*时,这个*调用*就直接返回了,不管返回有没有结果。当一个异步过程调用发出后,*被调用者*通过状态,通知来通知*调用者*,或者通过回调函数处理这个调用

2.阻塞和非阻塞

# 阻塞和非阻塞关注的是程序在等待调用结果时的状态

# 阻塞调用是指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才返回

# 非阻塞调用是指在不能立即得到结果之前,该调用不会阻塞当前线程

通俗例子一:

#老张爱喝茶

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137609.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pytorch最新版本_pytorch linear

    pytorch最新版本_pytorch linear1.应用importtorchimporttorch.nnasnnloss=nn.MSELoss()input=torch.tensor([1.0,1.0],requires_grad=True)target=torch.tensor([7.0,9.0])output=loss(input,target)#50output.backward()2.概念API类meansquarederror(squaredL2norm)CLASStor

    2022年9月15日
    2
  • Linux发邮件shell脚本与群发邮件shell脚本

    Linux发邮件shell脚本与群发邮件shell脚本Linux发邮件shell脚本与群发邮件shell脚本说明:因为明天统计疫情健康打卡,需要通知同学完成打卡,最开始是一个人一个人的进行QQ通知,为了方便通知,我利用Linux写了一个shell定时群发邮件提醒脚本,如果大家有需要的可以参考我的方式方法下面我将我进行配置的方法分享给大家1.Linux安装邮件服务因为Linux默认没有安装mail邮件服务,我们将进行安装,输入安装命令等待几秒即可安装成功yuminstallmailx2.配置发送邮件服务即你的邮箱2.1在命令行中输入

    2022年10月20日
    4
  • phpstorm2021.4.13激活码【在线破解激活】

    phpstorm2021.4.13激活码【在线破解激活】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    48
  • 微软最牛MS08-067漏洞各系统补丁下载地址

    微软最牛MS08-067漏洞各系统补丁下载地址本次MS08-067严重漏洞各系统补丁地址例如以下:中文操作系统KB958644补丁下载地址:WindowsVista安全更新程序(KB958644)http://download.mic

    2022年7月3日
    27
  • 新的博客-随记地址webooxx.com[通俗易懂]

    新的博客-随记地址webooxx.com[通俗易懂]虽然博客还没有完工,但是开了一个新的随记地址。webooxx.comMarkdocsOnline。是在百度的BAE上实现的,但是想弄到SAE上去,不过搞不定SAE的REWRITE,话说,其实我连本机

    2022年7月3日
    21
  • VDbench 参数信息[通俗易懂]

    VDbench 参数信息[通俗易懂]HD:主机定义 如果您希望展示当前主机,则设置hd=localhost。如果希望指定一个远程主机,hd=label。 system=IP地址或网络名称。 clients=用于模拟服务器的正在运行的客户端数量。 SD:存储定义 sd=标识存储的名称。 host=存储所在的主机的ID。 lun=原始磁盘、磁带或文件系统的名称。vdbench也可为您创建一个磁盘。 threads=对SD的最大并发I/O请求数量。默认

    2022年5月19日
    90

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号