Java 网络编程实战(二) - Unix的I/O模型解析
【摘要】 网络编程的本质是进程间通信
2 通信的基础是IO模型
输入流
文件,Java对象,字符串都可以是数据源
输出流
3 java.io 家族
字符流
字节流
4 设计模式 - 装饰器模式
奶茶店里面的装饰器模式(珍珠只是装饰)
Socket也是一种数据源
Socket是网络通信的端点
Unix中的Socket是什么
...
网络编程的本质是进程间通信
2 通信的基础是IO模型
输入流
文件,Java对象,字符串都可以是数据源
输出流
3 java.io 家族
字符流
字节流
4 设计模式 - 装饰器模式
- 奶茶店里面的装饰器模式(珍珠只是装饰)
Socket也是一种数据源
- Socket是网络通信的端点
Unix中的Socket是什么
◆ Unix系统中一切皆是文件
◆ 文件描述符表是已打开文件的索引
◆ 每个进程都会维护一个文件描述符表
通过socket发送数据
同步/异步/阻塞/非阻塞
- 排列组合
同步
面对面表白女生时为同步,持续性等待!
A线程:
A要去做事情A1,A2, A3。
如果A1正在执行的情况下A2, A3都不能执行,这叫做同步,也叫阻塞。A2必须等A1执
行完毕之后才能执行。
异步
女孩子考虑考虑,下次告诉你
A1正在执行的情况下,A2和A3也可以执行。这叫做异步、非阻塞。
阻塞调用
表白后,茶不思饭不想啥都不干就等待!
非阻塞调用
- 表白后,该干嘛干嘛
等待结果前,调用方的状态
同步阻塞
- 一直等待,不做别的事
同步非阻塞
等待时,还想着自己的bug没解决呢!
异步阻塞
表白后离开,等待手机消息,但茶不思饭不想
异步非阻塞
- 离开后,该干嘛干嘛
复用线程 -线程池
-
java提供的线程池
-
java提供的创建线程池的方法
文章来源: javaedge.blog.csdn.net,作者:JavaEdge.,版权归原作者所有,如需转载,请联系作者。
原文链接:javaedge.blog.csdn.net/article/details/103115049
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)