整个Java IO体系都是基于字符流(InputStream/OutputStream) 和 字节流(Reader/Writer)作为基类,根据不同的数据载体或功能派生出来的。 一、同步、异步、阻塞、非阻塞 1.1 同步与异步 同步和异步关注的是通讯方式。 同步:需要等所有操作完成后,返回结果。 异 ...
分类:
编程语言 时间:
2019-05-19 18:13:25
阅读次数:
135
1. 概念 1.1 同步和异步 同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由调用者主 ...
分类:
其他好文 时间:
2019-05-01 13:24:18
阅读次数:
127
在理解什么是BIO,NIO,AIO之前,我们首先需要了解什么是同步,异步,阻塞,非阻塞。假如我们现在要去银行取钱: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写); 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处 ...
分类:
其他好文 时间:
2019-04-17 16:35:24
阅读次数:
132
IO模型介绍 为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同 ...
分类:
其他好文 时间:
2019-03-08 15:13:29
阅读次数:
148
io模型 同步、异步、阻塞、非阻塞概念 同步:发出一个功能调用时,在没有得到结果之前,该调用就不会返回,原地等待 异步:相反,不需要等待 阻塞:调用结果返回之前,当前线程会被挂起,如io操作,只有在得到返回结果之后,才会将阻塞的线程激活和同步不一样,不要混淆,同步虽然也在原地等待,但是它的线程还是激 ...
分类:
其他好文 时间:
2019-02-17 22:16:56
阅读次数:
178
现在几乎所有的系统都是分布式的—— 已经没有那种集中式(webapp,数据库等等都在同一台服务器上。。) 那么带来的问题: ———— I/O模型 同步/异步 + 阻塞/非阻塞 ———— 数据一致性 数据同步 ———— 分布式事务 解决方案: 两阶段提交(2PC); 三阶段提交(3PC) 一些常用指标 ...
分类:
其他好文 时间:
2019-02-17 11:15:16
阅读次数:
222
1 并发、并行、同步、异步、阻塞、非阻塞 并发、并行 并发是报一个时间段内有几个程序在同一个cpu上运行,但是任意时刻只有一个程序在cpu上运行。在一个时间段内某一个请求很快,能够响应的用户就越多,高并发。 并行是指任意时刻点上,有多个程序同时运行在多个cpu上,并行数量跟CPU数一致的,因此没有高 ...
分类:
其他好文 时间:
2019-02-16 00:06:45
阅读次数:
227
目录 4.2.1 相关概念 4.2.1.1 进程 4.2.1.2 同步/异步 4.2.1.3 阻塞/非阻塞 4.2.1.4 并发/并行 4.2.1.5 进程状态与调度 4.2.2 多进程 4.2.1.1 创建进程 4.2.1.2 相关属性 4.2.1.1 相关方法 4.2.3 进程互斥锁 4.2.4 ...
分类:
系统相关 时间:
2019-01-31 01:35:31
阅读次数:
188
聊聊同步、异步、阻塞与非阻塞聊聊Linux 五种IO模型聊聊IO多路复用之select、poll、epoll详解 ? 聊聊同步、异步、阻塞与非阻塞聊聊Linux 五种IO模型聊聊IO多路复用之select、poll、epoll详解 ? ...
分类:
系统相关 时间:
2019-01-24 13:10:15
阅读次数:
184
为什么要理解这几个名词? 想要真正理解网络编程的原理,下面几个名词的理解是不可避免的,如果对下面几个名词不清晰,去学习网络编程中的BIO、NIO、AIO框架,会越陷越深,无法自拔。 同步、异步、阻塞、非阻塞 同步与异步:同步和异步是客户端与服务端通信的一种机制。 同步通信:就是客户端发送请求后,必须 ...
分类:
其他好文 时间:
2019-01-15 14:16:35
阅读次数:
259