
操作系统
miao-hu
这个作者很懒,什么都没留下…
展开
-
线程池核心线程数多少最为合适(IO密集型和CPU密集型)?
线程数量是否越多越好呢?一.CPU密集型CPU 使用率较高(也就是一些复杂运算,逻辑处理)非常多的情况下,线程数一般只需要CPU核心数的线程就可以了。 这一类型多出现在开发中的一些业务复杂计算和逻辑处理过程中。二.I/O密集型CPU 使用率较低,程序中会存在大量 I/O 操作占用时间,导致线程空余时间很多,所以通常就需要开CPU核心数两倍的线程。当线程进行 I/O 操作 CPU 空闲时,启...原创 2020-03-24 17:27:09 · 10954 阅读 · 0 评论 -
什么是死锁?怎样避免死锁的产生?
一.什么是死锁?死锁是指两个或两个以上的进程在执行过程中,因争夺资源或不正确的进程间推进顺序,而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去,此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。二.死锁产生的四个必要条件虽然进程在运行过程中,可能发生死锁,但死锁的发生也必须具备一定的条件,死锁的发生必须具备以下四个必要条件。1)互斥条件:指进程对所...原创 2020-03-24 16:58:15 · 413 阅读 · 0 评论 -
进程间的通信方式以及多线程和多进程之间的区别
一.两者区别(1)多进程1.数据是分开的,共享复杂,同步简单2.占用内存多,切换复杂,CPU利用率低3.创建销毁复杂,切换复杂,速度慢 4.编程简单,调试简单5.进程间不会相互影响 6.适应于多核、多机分布 ;如果一台机器不够,扩展到多台机器比较简单(2)多线程1.多线程共享进程数据,共享简单,同步复杂2.占用内存少,切换简单,CPU利用率高3.创建销毁简单,切换简单,速度...原创 2020-03-24 16:31:02 · 922 阅读 · 0 评论