精华内容
下载资源
问答
  • 举例说明同步通信异步通信

    千次阅读 2010-07-28 11:45:00
    同步和异步的区别  举个例子:普通B/S模式(同步)AJAX技术(异步同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事 异步: 请求通过事件触发->服务器处理...

    同步和异步的区别

     举个例子:普通B/S模式(同步)AJAX技术(异步)
    同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事
    异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕
    --------------------------------------------------------------------------------------------------------------------
    同步就是你叫我去吃饭,我听到了就和你去吃饭;如果没有听到,你就不停的叫,直到我告诉你听到了,才一起去吃饭。
    异步就是你叫我,然后自己去吃饭,我得到消息后可能立即走,也可能等到下班才去吃饭。

    所以,要我请你吃饭就用同步的方法,要请我吃饭就用异步的方法,这样你可以省钱。
    --------------------------------------------------------------------------------------------------------------------
    举个例子 打电话时同步 发消息是异步

     

    来源:http://ilinux.javaeye.com/blog/190028

    展开全文
  • 分布式学习笔记—分布式架构网络通信-同步异步-阻塞非阻塞 1. 三种IO模型:BIO、NIO、AIO BIO:同步阻塞 NIO:同步非阻塞 AIO:异步非阻塞 2. 同步和异步简介: 强调的是消息通信机制 2-1.同步同步...

    分布式学习笔记—分布式架构网络通信-同步与异步-阻塞和非阻塞

    1. 三种IO模型:BIO、NIO、AIO

    1. BIO:同步阻塞
    2. NIO:同步非阻塞
    3. AIO:异步非阻塞

    2. 同步和异步简介: 强调的是消息通信机制

    2-1.同步

    1. 同步(synchronize)异步(asychronize)是指应用程序和内核(操作系统)的交互而言的.
    2. 同步:指用户进程触发IO操作等待或者轮训的方式查看IO操作是否就绪。
    3. 同步举例: 银行取钱,我自己去取钱,取钱的过程中等待.

    2-2.异步

    1. 当一个异步进程调用发出之后,调用者不会立刻得到结果。而是在调用发出之后,被调用者通过状态、通知来通知调用者,或者通过回调函数来处理这个调用。
    2. 使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS,OS需要支持异步IO操作
    3. 异步举例:我请朋友帮我取钱,他取到钱后返回给我. (委托给操作系统OS, OS需要支持IO异步API)

    3. 阻塞和非阻塞: 强调的是程序在等待调用结果(消息,返回值)时的状态

    1. 阻塞和非阻塞是针对于进程访问数据的时候,根据IO操作的就绪状态来采取不同的方式.
    2. 简单点说就是一种读写操作方法的实现方式. 阻塞方式下读取和写入将一直等待, 而非阻塞方式下,读取和写入方法会立即返回一个状态值.
    3. 举个例子:
      1. 阻塞:ATM机排队取款,你只能等待排队取款(使用阻塞IO的时候,Java调用会一直阻塞到读写完成才返回。)
      2. 非阻塞
        柜台取款,取个号,然后坐在椅子上做其他事,等广播通知,没到你的号你就不能去,但你可以不断的问大堂经理排到了没有。(使用非阻塞IO时,如果不能读写Java调用会马上返回,当IO事件分发器会通知可读写时再继续进行读写,不断循环直到读写完成)

    4. 同步和异步,阻塞和非阻塞的例子

    老张煮开水。 老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。
    1. 老张把水壶放到火上,站立着等水开。(同步阻塞)
    2. 老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有。(同步非阻塞)
    3. 老张把响水壶放到火上,立等水开。(异步阻塞)
    4. 老张把响水壶放到火上,去客厅看电视,水壶响之前不再去看它了,响了再去拿壶。(异步非阻塞)

    5. BIO: 同步阻塞IO,B代表blocking

    1. 服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。
    2. 适用场景:Java1.4之前唯一的选择,简单易用但资源开销太高
      在这里插入图片描述

    6. NIO介绍: 同步非阻塞IO (non-blocking IO / new io)是指JDK 1.4 及以上版本

    1. 服务器实现模式为一个请求一个通道,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有IO请求时才启动一个线程进行处理。

    6-1.通道(Channels)

    1. NIO 新引入的最重要的抽象是通道的概念。Channel 数据连接/传输的通道。 数据可以从Channel读到Buffer中,也可以从Buffer 写到Channel中 .

    6-2.缓冲区(Buffers)

    1. 通道channel可以向缓冲区Buffer中写数据,也可以像buffer中存数据。

    6-3.选择器(Selector)

    1. 使用选择器,借助单一线程,就可对数量庞大的活动 I/O 通道实时监控和维护。
      在这里插入图片描述

    7. AIO介绍: 异步非阻塞IO。A代表asynchronize

    1. 当有流可以读时,操作系统会将可以读的流传入read方法的缓冲区,并通知应用程序,对于写操作,OS将write方法的流写入完毕是操作系统会主动通知应用程序。因此read和write都是异步 的,完成后会调用回调函数。
    2. 使用场景:连接数目多且连接比较长(重操作)的架构,比如相册服务器。重点调用了OS参与并发操作,编程比较复杂。Java7开始支持
    展开全文
  • 异步和同步相反 调用方不会理解得到结果,而是在调用发出后调用者可用继续执行后 续操作,被调用者通过状体来通知调用者,或者通过回掉函数来处理 这个调用 现实举例: 你去商城买东西,你看上了一款手机,能和...

    1、同步和异步解释

    官方定义:

    同步和异步关注的是消息通信机制 (synchronous communication/ 
    asynchronous communication)。同步,就是调用某个东西是,调用
    方得等待这个调用返回结果才能继续往后执行。异步,和同步相反  
    调用方不会理解得到结果,而是在调用发出后调用者可用继续执行后
    续操作,被调用者通过状体来通知调用者,或者通过回掉函数来处理
    这个调用
    

    现实举例:

    你去商城买东西,你看上了一款手机,能和店家说你一个这款手机,他
    就去仓库拿货,你得在店里等着,不能离开,这叫做同步。现在你买手
    机赶时髦直接去京东下单,下单完成后你就可用做其他时间(追剧、打
    王者、lol)等货到了去签收就ok了.这就叫异步。
    

    2、并发和并行解释

    	并发:几个线程轮流交替使用CPU,较少CPU浪费,其中B线程执行时A不一定结束了;
    	并行:几个任务同时执行,如PC开启多个进程;
    	串行:几个任务依次执行,必须等到上一个任务结束了,下一个才能开始;
    

    图示(引用网络图片,个人觉得这个图片很赞) 引用网络上图片

    3、 阻塞和非阻塞

    3-1 挂起含义:

    挂起进程在操作系统中可以定义为暂时被淘汰出内存的进程
    

    3-2 阻塞:

    阻塞和非阻塞指程序在等待调用结果(消息,返回值)时的状态.
    阻塞调用是指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才会返回。
    

    3-3 非阻塞

    非阻塞调用指在不能立刻得到结果之前,该调用不会阻塞当前线程。
    
    展开全文
  • 举例:串口的同步通信异步通信; Linux的内核同步机制 / 并发 / 临界区—针对CPU线程执行时机的描述 要理解linux内核同步,要先理解 并发、临界区、共享资源 的 概念。 共享资源:多个执行线程(内核描述正在执行...

    在编程时,大家常常会解除到 同步、异步这个 概念。如:
    同步通信、异步通信;同步调用,异步调用;同步io,异步io。到底如何理解这里面的同步和异步行为?

    同一个词汇在不同上下文中都有差异,在理解概念的时候 不要扣字眼,一定要联系上下文去理解。以下几个概念之间大部分是完全割裂的,不要绕在一起理解。

    硬件 同步时钟与异步时钟—针对时钟是否同源描述

    讨论两个时钟时,当两个时钟间的相位是固定关系的,则可以称这两个时钟为同步时钟。一般同源,如由同一个PLL产生的两个时钟可以称为同步时钟,因此可以将主时钟和与之对应的衍生时钟约束成同一个时钟组。无法判定两个时钟间相位时,则可以称这两个时钟为异步时钟。两个来自不同晶振的时钟,一定是异步时钟。

    硬件 (如串口)的同步通信/异步通信—针对数据连接交互机制描述

    串口通信 存在同步通信和异步通信两中种。
    同步通信进行数据传输时,要求发送和接收双方要保持完全的同步,因此,要求接收和发送设备必须使用同一时钟。同步通信可以实现高速度、大容量的数据传送。效率较高,但是方案较复杂。
    异步通信时不要求接收端时钟和发送端时钟同步,发送端发送完一个字节后,可经过任意长的时间间隔再发送下一个字节。异步通信信道利用率较低(因为开始位和停止位的开销所占比例较大),故效率相对较低,方案简单。

    对象之间或者函数之间 调用的 同步/ 异步—针对调用返回任务是否完成描述

    这里的同步指对象和函数之间调用关系。
    同步调用:调用者发出调用后,没有得到结果前不会返回,需要等待被调用者相关执行完成,得到结果后调用完成返回。
    异步调用:调用者发出调用后,立即返回。要执行的过程和结果并没有完成,由被调用者后续执行,如果需要返回结果 在后续执行完成后通过状态、消息、或者回调来通知被调用者。

    Linux的内核同步机制 / 并发 / 临界区—针对CPU线程执行时机的描述

    要理解linux内核同步,要先理解 并发、临界区、共享资源 的 概念。

    共享资源:多个执行线程(内核描述正在执行的代码实例,比如内核执行的进程、中断处理程序或者内核线程的执行)可能同时访问或操作的数据。这个数据可能发生多个执行线程之间相互覆盖共享数据的情况,引起访问数据不一致性,特别是部分覆盖情况,造成异常隐患。

    并发:并发是指多个线程同时运行,早期的单核处理器的并发场景相对简单,linux从2.0版本开始就支持多对称处理器,2.6开始引入内核抢占机制,并发变得复杂。从内核的角度看: 进程上下文 与 进程上下文 / 进程上下文与 内核线程 / 进程上下文 与 中断(硬中断、软中断、tasklet)/ 中断与中断 / 中断与内核线程 / 内核线程 与 内核线程 都可能发生。 发生的原因有 中断的发生、软中断/tasklet的发生、内核的抢占、睡眠及与用户空间同步、多对称处理引发的并发。

    临界区:也叫临界段,就是访问和操作共享数据的代码段,为了避免多个执行线程在临界区并发访问,就必须保证这些代码原子执行,也就是在执行结束前不可被打断。

    内核同步:为了达到多个执行线程协同目的而设计的机制,通常包含异步通信机制和互斥机制;典型的同步方法有:原子操作、自旋锁(包括读写锁)、信号量、互斥体 等。
    可以参考:https://blog.csdn.net/runafterhit/article/details/78419997

    展开全文
  • 在一些技术博客或者场景中,经常会出现同步异步、阻塞非阻塞,下面简单的介绍下区别。 2 同步阻塞 2.1 基础解答 客户端发送请求给服务端,此时服务端处理任务时间很久,则客户端则被服务端堵塞了,所以客户端会...
  • 同步和异步 关注维度:消息的通信机制(synchronous communication/asynchronous communication) 判断标准:调用者是否主动等待被调用者的返回结果 同步的理论说明:任务A的执行过程中调用了任务B。任务A对任务B...
  • 在我们了解Java NIO/BIO的网络通信之前,我们先了解一下常用的阻塞/非阻塞模型以及同步/异步的概念 一、阻塞非阻塞 从简单的开始,我们以经典的读取文件的模型举例。(对操作系统而言,所有的输入输出设备都被...
  • 这里就要说一下同步和异步的区别了。先讲一下串行通信的概念。那么,与串行通信相对的是什么呢?与串行通信相对的是并行通信。数据传输一般都是以字节传输的,一个字节8个位。拿一个并行通信举例来说,也就是会有8根...
  • 这里就要说一下同步和异步的区别了。先讲一下串行通信的概念。那么,与串行通信相对的是什么呢?与串行通信相对的是并行通信。数据传输一般都是以字节传输的,一个字节8个位。拿一个并行通信举例来说,也就是会有8根...
  • 线程间通信

    2018-11-08 18:47:15
    Synchronized同步方式无条件的阻塞了其他线程异步访问某个方法。Java对象中隐式管程的应用是很强大的,但是你可以通过进程间通信达到更微妙的境界。这在Java中是尤为简单的。 像前面所讨论过的,多线程通过把任务...
  • 这是一本很好的教科书技术参考书,适用于电子与通信类专业的高年级本科生、研究生及研究所企业的工程技术人员。 【目录】 第一部分 宽带系统引论 第1章 基础知识 1. 1 什么是宽带系统 1. 2 发展历史 参考文献 ...
  • EJB——消息消息驱动bean(二)

    热门讨论 2016-07-23 15:31:39
     在Java EE环境中组件之间的通信同步和异步两种方式,同步是指调用者调用目标必须出现以便通信成功完成,也意味着调用者在处理之前必须等待目标完成服务请求 。 举例来说, 当你(调用者)给某个人打电
  • 同步异步主要是事情做完以后,如何进行处理、或者说关注的是一种消息通信机制。 同步的情况下,是由处理消息者自己去等待消息是否被触发; 而异步的情况下是由触发机制来通知处理消息者 举例: 所以同步异步可以...
  • java aionio的区别

    万次阅读 多人点赞 2018-08-31 00:35:39
    AIO 是彻底的异步通信。 NIO 是同步非阻塞通信。 有一个经典的举例。烧开水。 假设有这么一个场景,有一排水壶(客户)在烧水。 AIO的做法是,每个水壶上装一个开关,当水开了以后会提醒对应的线程去处理。 NIO的...
  • AIO 是彻底的异步通信。NIO 是同步非阻塞通信。有一个经典的举例。烧开水。假设有这么一个场景,有一排水壶(客户)在烧水。AIO的做法是,每个水壶上装一个开关,当水开了以后会提醒对应的线程去处理。NIO的做法是,叫...
  • 文章目录ARM通讯接口串行通信的基本概念串行通信涉及的常用术语(单工、半双工和全双工,异步方式与同步方式)协议举例串口 UART 协议Exynos4412 UART接口功能模块Exynos4412 相关寄存器UART 编程main....
  • 根据消息传递的不同,分布式系统的运行模型可以分为异步模型系统 和同步模型系统。 1、同步与异步 同步和异步关注的是消息通信机制 。 1.1 同步 所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不...
  • Ajax 技术的一些总结

    2013-09-06 20:05:23
    Ajax首先大概说下同步交互和异步交互空洞的说写概念的话,比较抽象,所以举例说下什么是异步和同步同步就是我发送了数据,我必须等接收方接收完了才能发送下一个数据异步就是我发送了数据,接收方接收吧,我不用看着...
  • 7.3 通用同步/异步收发器USART的应用举例 思考题与练习题 第8章 主控同步串行端口MSSP——SPI模式 8.1 SPI接口的背景知识 8.1.1 SPI接口信号描述 8.1.2 基于SPI的系统构成方式 8.1.3 SPI接口工作原理 8.1.4 兼容的...
  • Java之IO,BIO,NIO,AIO

    2017-07-21 12:16:06
    对于网络通信而言NIO,AIO并没有改变网通通信的基本步骤,即Socket建立连接需要三次握手serversocket 。只是在其原来的基础上(serverscoket,socket)做了进一步封装优化。 编号 名词 解释 举例  1 同步 指的是...
  • 并发编程

    2018-05-26 20:16:00
    练习题:   1、简述计算机操作系统中的“中断”的作用?... 6、什么是同步I/O,什么是异步I/O?  7、请问multiprocessing模块中的Value、Array类的作用是什么?举例说明它们的使用场景  8...
  • !!注意:全文有99M,由于上传文件不得超过...25.6.1 同步进程、异步通道* 480 25.6.2 异步进程、同步通道* 481 25.6.3 最终时间界限* 481 25.7 小结 483 25.8 参考文献注释 483 25.9 习题 483 参考文献 486 索引 512
  • 6.3.1 举例 66 6.3.2 byzantine一致性问题的eig算法 68 6.3.3 使用二元byzantine一致的一般 的byzantine一致性问题 71 6.3.4 减少通信开销 72 6.4 byzantine一致性问题中进程的个数 74 6.5 一般图中的...
  • 12.7 线程协调和同步 108 12.7.1 互斥 108 12.7.2 信号量 108 12.7.3 条件变量 109 12.8 使用线程的服务器实例 109 12.9 监控 113 12.10 小结 113 深入研究 113 习题 114 第13章 单线程、并发服务器(TCP)...
  • 3.8 并发和异步I/O 27 3.9 UNIX下的并发 28 3.10 执行一个单独编译的程序 29 3.11 小结 30 进一步的研究 30 习题 30 第4章 协议的程序接口 32 4.1 引言 32 4.2 宽松定义的协议软件接口 32 4.3 接口功能 33 ...
  • ABAP面试大全

    2013-12-30 15:44:36
    每种类型又是以哪种模式(异步同步或本地)执行的呢? 11 2.2.7使用OPEN SQL注意原则 11 2.3 与表相关 11 2.3.1 MM模块有哪些常用表格 11 2.3.2 HR模块知识:HR里面存储HR主数据主要用到了哪些表? 11 2.3.3 HR...
  • msp430书稿开发板

    2011-03-17 21:46:39
    1.2.6.3异步通信寄存器 - 40 - 1.2.6.4异步操作应用举例 - 42 - 1.2.7 模数转换 - 43 - 1.2.7.1 ADC12结构 - 43 - 1.2.7.2 ADC12寄存器 - 44 - 1.2.7.3 ADC12转换模式 - 47 - 1.2.8 FLASH存储器模块 - 50 - 1.2.8.1...
  • Java程序员面试宝典pdf

    热门讨论 2013-02-21 13:06:13
    面试题083 如何使用sychronized来让线程同步 139 面试题084 编写一个生产者与消费者模型的多线程例子程序 141 面试题085 如何使用Java的线程池 143 8.3 小结 145 第9章 Java的反射机制( 教学视频:30分钟) 146 9.1...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

异步通信和同步通信举例