网络编程的本质是进程间通信
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提供的创建线程池的方法
 
 
                     
            
        













 
                    

 
                 
                    