阻塞与非阻塞指的是 socket api,如,accept,read,write,conncet等,通过fcntl或者ioctlsockt可以设置socket非阻塞。 同步与异步指的是 io复用通知应用程序的是 io就绪事件还是io完成事件,也就是读写数据是有应用程序来读写还是内核来读写。也叫rea ...
分类:
其他好文 时间:
2017-11-18 23:36:20
阅读次数:
141
阅读目录(Content) 一、同步和异步 二、阻塞和非阻塞 阅读目录(Content) 一、同步和异步 二、阻塞和非阻塞 回到顶部(go to top) 一、同步和异步 同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communi ...
分类:
其他好文 时间:
2017-11-18 11:17:00
阅读次数:
135
同步、异步、阻塞、非阻塞 同步:所谓同步就是当一个*调用另一个*时,在没有得到结果之前,该*调用*就不返回东西,一旦有结果,就得到返回值了。异步:所谓异步同同步相反,当一个*调用一个*时发出时,调用直接得到返回,所以没有返回结果。换句话说,当一个异步过程调用发出后,调用者不会立刻得到结果。而是在*调 ...
分类:
其他好文 时间:
2017-11-17 11:57:38
阅读次数:
193
1.同步和异步 同步:指一个任务运行完以后接着运行下一个任务 异步:接到一个任务后开启一个新的线程运行此任务,基本不占用原线程时间 2.阻塞与非阻塞 阻塞:多个线程同时访问一份数据时,只有一个线程进行访问,其他处于等待状态 非阻塞:多个线程可以同时访问同一份数据 3.nio与io及aio区别 nio ...
分类:
编程语言 时间:
2017-10-06 11:31:51
阅读次数:
176
3.6.1.非阻塞IO 3.6.1.1、阻塞与非阻塞 阻塞:阻塞具有很多优势(是linux系统的默认设置),单路IO的时候使用阻塞式IO没有降低CPU的性能 补充:阻塞/非阻塞, 它们是程序在等待消息(无所谓同步或者异步)时的状态. 阻塞调用是指调用结果返回之前,当前线程会被挂起。函数只有在得到结果 ...
分类:
系统相关 时间:
2017-09-29 16:29:21
阅读次数:
233
异步的概念和同步相对。当一个同步调用发出后,调用者要一直等待返回消息(结果)通知后,才能进行后续的执行;当一个异步过程调用发出后,调用者不能立刻得到返回消息(结果)。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。 非阻塞和阻塞的概念相对应,当发生一个调用时,在等待调用过程的结果中 ...
分类:
其他好文 时间:
2017-09-29 16:25:10
阅读次数:
111
一 客户端/服务器结构 客户端/服务器架构又称为c/s架构是编程中常用的架构模式之一 示例: 1: 硬件C/S架构(打印机) 2:互联网中处处是C/S架构 腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频) c/s 架构和socket之间的关系: 我们学习socket就是为了完成C/ ...
分类:
其他好文 时间:
2017-09-25 19:53:41
阅读次数:
191
1.创建一个input.txt 文本文件 里面随便写一些内容 2.创建main.js文件 以上两个实例我们了解了阻塞与非阻塞调用的不同。第一个实例在文件读取完后才执行完程序。 第二个实例我们不需要等待文件读取完,这样就可以在读取文件时同时执行接下来的代码,大大提高了程序的性能。 因此,阻塞是按顺序执 ...
分类:
Web程序 时间:
2017-09-23 20:27:42
阅读次数:
326
在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步: 所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事。 例如普通B/S模式(同步):提交请求- ...
分类:
其他好文 时间:
2017-09-22 20:08:35
阅读次数:
144
recv是socket编程中最常用的函数之一,在阻塞状态的recv有时候会返回不同的值,而对于错误值也有相应的错误码,分别对应不同的状态,下面是我针对常见的几种网络状态的简单总结。 首先阻塞接收的recv有时候会返回0,这仅在对端已经关闭TCP连接时才会发生。 而当拔掉设备网线的时候,recv并不会 ...
分类:
其他好文 时间:
2017-09-01 00:55:32
阅读次数:
138