说瞬时有点夸张了,其实是想说有什么能够以极快采样周期(比如 1ms )采集进程的 CPU 利用率?
手上有一台 M2 的 Macbook air ,偶尔会出现及其卡顿的情况。
问题出现频率:一周一次左右。 问题现象:鼠标一直转圈,切换应用,打字,鼠标点击都无反应,要隔好久才会有反应。
问题出现时并没有新开什么 app ,猜测是某些 app 或系统运行过程中触发的 bug 。
查看活动监视器,内存压力正常,硬盘空间富余。但是 CPU 会瞬时冲高,用户的系统负载都会冲高到 100%,然后又回落,过几秒后又冲高又回落。但是在 CPU 页签中看不到哪个进程引起的冲高(因为活动监视器中进程 cpu 时间是统计一段时间内的,出问题的进程只是瞬时 100%又降下来,在 CPU 负载图中能看到,但是没法看到 100%时是哪个进程导致)
所以才想说 Mac 上有什么可以获取进程瞬时 CPU 利用率的手段?我想看下出问题时是由什么进程导致的。
1
pppcx 2023-08-23 17:41:18 +08:00
istat menus
|
2
jorneyr 2023-08-23 17:47:44 +08:00
这个就是监控告警功能,写个脚本隔 x 毫秒执行命令 top 抓取 cpu 使用最多的进程,cpu 超过阈值后把数据保存到文件里。
|
3
yagamisam 2023-08-23 18:04:05 +08:00
看描述很像是’简体中文输入方式‘这个进程导致的。如果是的话,卡顿的时候,顶着卡顿把这个进程杀了就好了。
|
4
Leonard 2023-08-23 18:06:00 +08:00 via iPhone
输入法的 bug
|
5
yzwduck 2023-08-23 19:01:00 +08:00 via Android
没装 Xcode: 终端跑 sudo spindump, 建议提前开好 root 权限的 shell, 遇到问题马上执行 spindump.
有装 Xcode: 打开 Instruments.app, Recording Options 里的 Global Options 的 Recording Mode 选 Last xxx seconds. |
6
wingerwwang 2023-08-23 19:10:32 +08:00 via iPhone
非常类似的情况,可以通过杀输入法缓解。
|
7
ChoiKarl 2023-08-23 22:05:50 +08:00
@wingerwwang 怎么弄啊,我也经常碰到,只能强制重启电脑。
|
8
wingerwwang 2023-08-23 23:48:25 +08:00 via iPhone
@ChoiKarl
引自另一位 v 友: 添加两条定时任务即可解决 0 */2 * * * kill -9 `pgrep SCIM` 0 */2 * * * kill -9 `pgrep Spotlight` |
9
qq316107934 2023-08-24 01:04:00 +08:00
strace?
|
10
zjsegzhf OP @jorneyr top 应该不行吧
@jorneyr @Leonard @wingerwwang 是 Mac 自带的输入法吗? 多谢我下次试试,之前都是直接杀了 WindowServer 来让自己重新登陆就好了。 |
11
ChoiKarl 2023-08-24 12:36:44 +08:00
@wingerwwang #8 咋还有 Spotlight 的事。。。
|
12
wingerwwang 2023-08-26 10:17:18 +08:00 via iPhone
@ChoiKarl 我也不知道…反正有效🤪
|