图
2024-07-08 09:55:58 阅读次数:28
进程是计算机科学中非常重要的概念,它是操作系统中的一个基本单位,负责执行程序并管理资源。在JavaEE开发中,进程的概念同样非常重要,因为JavaEE应用程序通常是多线程的,每个线程都是一个进程的一部分。
Windows下获得系统cpu空闲比及指定进程CPU占比
单核 cpu 下,线程实际还是串行执行的。操作系统中有一个组件叫做任务调度器,将 cpu 的时间片(windows下时间片最小约为 15 毫秒)分给不同的程序使用,只是由于 cpu 在线程间(时间片很短)的切换非常快,人类感觉是同时运行的 。总结为一句话就是: 微观串行,宏观并行 。
多线程的应用
GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。
由于同一进程中的所有线程都是共享数据的,如果对线程中共享数据的并发访问不加以限制,结果将不可预期,在严重的情况下,还会产生死锁
性能测试——性能统计工具
NUMA 架构将内存和cpu分散在不同的 NUMA 节点上,每个节点都有自己的本地内存和cpu处理器,将进程绑定到特定的 NUMA 节点或cpu上,可以让进程直接访问本地内存和CPU,减少访问远程节点开销,提高访问速度,从而提高程序性能。
如何通过消耗CPU达到:CPU的占用率保持指定的百分比,如50%。
使用cgroup控制CPU使用率
文章
28587
阅读量
3791982
2024-12-24 10:19:31
2024-11-04 09:33:47
2024-04-17 08:21:15
2023-06-30 08:28:39
2023-06-25 07:12:33
2023-05-29 10:49:26
2023-02-15 10:02:19
2023-05-29 10:49:26
2023-06-25 07:12:33
2023-06-30 08:28:39
2024-04-17 08:21:15
2024-11-04 09:33:47