zoukankan      html  css  js  c++  java
  • 同步传输、异步传输、阻塞和非阻塞、同步处理、异步处理

      同步传输、异步传输、阻塞和非阻塞、同步处理、异步处理

      同步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式;而异步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式。

      连个设备之间的文件数据传输,如果是同步传输的话,就像在文件复制一样,原原本本的数据流就可以了,但是对于远程的网络来说,是无法达到的,所以,采用异步传输技术。
      如:两个电脑之间的文件传输,一个是最好的CPU 另一个则比较慢,那么,他们之间不可能同时完成数据的传递。
    在传输的数据中间加入识别标识,如纠错码、效验位等都数据异步传输的技术

      阻塞套接字是指执行此套接字的网络调用时,直到成功才返回,否则一直阻塞在此网络调用上,比如调用recv()函数读取网络缓冲区中的数据,如果没有数据到达,将一直挂在recv()这个函数调用上,直到读到一些数据,此函数调用才返回;而非阻塞套接字是指执行此套接字的网络调用时,不管是否执行成功,都立即返回。比如调用recv()函数读取网络缓冲区中数据,不管是否读到数据都立即返回,而不会一直挂在此函数调用上。在实际Windows网络通信软件开发中,异步非阻塞套接字是用的最多的。平常所说的C/S(客户端/服务器)结构的软件就是异步非阻塞模式的。 

          同步处理、异步处理,之所以在这说这两个概念,是因为要和传输概念区分开,传输同步异步,和处理同步异步概念别混淆

    百度解释:

      异步调用就是你 喊 你朋友吃饭 ,你朋友说知道了 ,待会忙完去找你 ,你就去做别的了。

      同步调用就是你 喊 你朋友吃饭 ,你朋友在忙 ,你就一直在那等,等你朋友忙玩了 ,你们一起去。

  • 相关阅读:
    OC之runtime面试题(一)
    OC之runtime的(isKindOfClass和isMemberOfClass)
    OC之runtime(super)
    OC中的__block修饰符
    iOS录音及播放
    webpack5升级过程遇到的一些坑?
    (转)iOS工具--CocoaPods 安装使用总结
    iOS学习--NSObject详解
    iOS学习--通过ipa包如何获取图片资源
    ‘A downloaded software component is corrupted and will not be used. ‘ while publish an iOS app to apple store via Xcode
  • 原文地址:https://www.cnblogs.com/cuihongyu3503319/p/1812512.html
Copyright © 2011-2022 走看看