同步与异步通信编程
来源:互联网 发布:夏日走过山间 知乎 编辑:程序博客网 时间:2024/05/29 04:05
编写异步的通信程序,就是说你首先打开发送机制并发送4000个字节的信息,但是主线程并不循环或者阻塞在那里等着发送完成,而是线程继续执行去干别的事情。等操作系统发送完成这4000个信息,它会回调你的处理方法,你就可以在这个回调方法中继续发送下一个4000个字节的信息,然后就结束了(不需要循环或者阻塞)。等操作系统又发送完,又会回调你的处理程序,你又可以继续发送下一块数据.....直到你发送完最后一块数据,操作系统回调你的程序的时候,你不再发送数据了,可以直接关闭发送机制。
类似这类过程叫做异步地进行通讯编程。跟操作系统底层是不是异步通讯没有关系。通讯程序异步编程是最为简洁和和高效地并行化编程的机制,至于通讯的各个层(例如7层模型的底下基层)如何实现,无关。
多数时候我们说编写通讯程序的方式的时候,异步通讯都是指异步地编写通讯程序,我们写的程序只是作为一个方法片段参与操作系统的通讯程序的并行调度之中,是指从应用层的角度的并行化,而并不是玩底层的通讯概念。
实际上简单的说,所谓异步,就是指请求方或发起方发出一个通信请求,这时请求方不会等待对方的回复,继续后面的工作。请求的结果由对方在完成了相应的操作后,通过一个回调(callback)的机制,回调请求方的一个方法,以便通知请求方它的请求已经得到了回复。当然回调的方法是请求方在一开始发出请求的时候就已经告诉对方了。
相对同步,情况正好相反,请求方发出通信请求后,会一直等待对方的回复,在收到回复前,不会做任何事情,直到超时或收到回复为止。
---------------------------------------------------------------
1. 异步通信就是把信件丢进邮筒里面就可以了,之后你该干什么的就干什么去。然后若干天后,会有邮差主动把回信送上门,告诉你,回信到了。
同步这是你把信丢进邮筒里面之后,啥也做不了,只能够盯着那个邮筒,直到回信从里面吐出来(hehe,现实中不可能是这样的,类比啦)
2. 跟通信是两码事。
- 同步与异步通信编程
- 同步通信与异步通信
- 同步通信与异步通信
- 同步通信与异步通信
- 同步通信与异步通信
- 同步通信与异步通信
- 同步通信与异步通信
- 同步通信与异步通信
- 同步与异步串行通信
- 同步与异步串行通信
- 举例说明同步通信与异步通信
- Socket同步通信与异步通信
- 同步通信与异步通信区别
- 同步通信与异步通信区别
- 同步通信与异步通信的区别
- 同步通信与异步通信的区别
- 同步通信与异步通信区别 .
- 同步通信与异步通信区别
- form中显示GIF动态图片
- 拖放操作
- 精确定时
- zzuli1507最大公约数和最小公倍数
- android使用sqlite存储数据
- 同步与异步通信编程
- 【LDD】hello world
- codeforces Round #97
- 二值图像的腐蚀和膨胀
- c++面试宝典2011
- Struts2学习笔记(4)-----Struts2常见的表单标签用法
- 1281
- Maven 入门示例
- C#调用DLL文件时参数对应表