点击上方"IT牧场",选择"设为星标"
技术干货每日送达!
作者:空无
https://segmentfault.com/u/kongwu/articles
问题
1、无限循环的while会导致CPU使用率飙升吗?2、经常使用Young GC会导致CPU占用率飙升吗?3、具有大量线程的应用程序的CPU使用率是否较高?4、CPU使用率高的应用程序的线程数是多少?5、处于BLOCKED状态的线程会导致CPU使用率飙升吗?6、分时操作系统中的CPU是消耗 us还是 sy?
思路
1.如何计算CPU使用率?
CPU%= 1 - idleTime / sysTime * 100
idleTime:CPU空闲的时间
sysTime:CPU处于用户模式和内核模式的时间总和
2.与CPU使用率有关的是什么?
人们常说,计算密集型程序的CPU密集程度更高。
那么,JAVA应用程序中的哪些操作更加CPU密集?
以下列出了常见的CPU密集型操作:
1、频繁的GC; 如果访问量很高,可能会导致频繁的GC甚至FGC。当调用量很大时,内存分配将如此之快以至于GC线程将连续执行,这将导致CPU飙升。2、序列化和反序列化。稍