操作系统
珍惜时间简单生活
这个作者很懒,什么都没留下…
展开
-
进程和线程的区别
(1)进程是资源的分配和调度的一个独立单元,而线程是CPU调度的基本单元 (2)同一个进程中可以包括多个线程,一个进程至少包括一个线程,一个程序至少包含一个进程; (3)地址空间和资源拥有:同一个进程的线程共享本进程的地址空间和资源比如内存和cup等等,不同进程之间地址空间和资源都是独立的; (4)执行过程:每个独立的进程程有一个程序运行的入口、顺序执行序列和程序入口。但是线程不能独立...原创 2018-07-24 15:23:34 · 8774 阅读 · 0 评论 -
Java NIO:BIO与NIO的区别
NIO的核心:Channel(通道),Buffer(缓存), Selector(选择器) (1)BIO是面向流(Stream)的,NIO是面向缓存区(Buffer)的。 IO面向流一位着每次从流中读一个或多个字节,直至读取所有字节,他们没有缓存在任何地方,也不前后移动流中的数据;NIO读取到一个可处理的缓冲区,可以再还从去中前后移动数据。 (2)BIO的流是阻塞的,NIO是非阻塞的。 ...原创 2018-08-09 16:37:08 · 996 阅读 · 2 评论 -
Java NIO:BIO,NIO和AIO的区别
(1)BIO,同步阻塞式,一个连接一个线程。 使用BIO模式建立网络连接,需要在服务端启动一个ServerSocket,然后客户端启动Socket进行通信。服务器对每个请求建立若干线程等待请求,客户端发送请求后,先循询问服务端是否有线程,如果没有则等地啊或者遭到拒绝请求,如果有,客户端线程会等待请求结束后踩继续执行。 (2)NIO,同步非阻塞IO, 一个请求一个线程。 NIO基于Rea...原创 2018-08-09 16:38:24 · 2079 阅读 · 0 评论 -
IO的模型
1、阻塞IO模型 最基础的IO模型,在读写数据过程中会发生阻塞现象。 在等待IO完成的过程中,用户线程会处于阻塞状态,让出CPU使用权。 IO完成以后,用户线程解除阻塞。 2、非阻塞IO模型 用户线程发起一个read操作,不需要等待,而是马上得到了一个结果,如果结果是error时,它就知道数据还没准备好,于是再次发送read操作。 在读写数据过程中不会发生阻塞现象。 在等待IO完成的过程中,用户线...原创 2019-03-27 19:10:12 · 229 阅读 · 0 评论