CY摸鱼java笔记033
线程
一,什么是线程?
有序严谨的指令即称为程序。
程序的同时多运行称为进程。
程序中不同的执行路径称为线程。
多线程编程简单,效率高,易于资源共享。
二,什么是线程同步?
线程同步是指在一段程序执行过程中,无论成功还是失败,其他线程都会等待这段程序执行完毕才会转入其他线程,这样可以保证程序的完整性和安全性。
三,什么是流?
流是用于连接程序和设备之间的管道,主要用于数据传输,这个管道上有很多按钮,每个按钮可以实现不同的功能。
四,流的分类。
四大基本抽象流(输入流,输出流,字节流,字符流)。
文件流,缓冲流,转换流,数据流,print流,object流。
缓冲流


bufferiostream内部有一个缓冲byte[8192]
视频代码实现的byte[2048]其实是自定义缓冲
也就是二级缓冲。
并且当二级缓冲(用户定义缓冲)大于一级缓冲时,加一层bufferiostream是没有意义的
简单讲bufferiostream等效于
一个iostream加上自己代码实现byte[8192]
对比试验了一下,BuffereInputStream和BuffereOutputStream确实比FileInputStream和FileOutputStream快,而且要快好多,一个7Mb大的mp3文件,前者1秒不到就复制完成了,后者得三四十秒才复制完成,而且可以看到后者的大小一直在变大,挺好玩的。。。