在mac使用dropbox同步文件时,有时dropbox进程的cpu占有率超过100%,在dropbox的论坛上有个帖子就是关于这个问题:https://www.dropboxforum.com/hc/communities/public/questions/201275159--Solved-Dropbox-osx-yosemite-stuck-Downloading-file-list-topping-100-cpu-usage,看来这可能是dropbox的一个bug,参照帖子中的一个回答,通过使用renice命令降低dropbox进程id的执行优先级把这个问题解决了。
解决思路:
1. 查看dropbox进程id
ps -A |grep Drop
显示出dropbox的进程信息
4485 ?? 96:04.75 /Applications/Dropbox.app/Contents/MacOS/Dropbox /firstrunupdate 337 4503 ?? 0:08.51 /Library/DropboxHelperTools/Dropbox_u501/dbfseventsd 4504 ?? 0:40.35 /Library/DropboxHelperTools/Dropbox_u501/dbfseventsd 4506 ?? 0:25.89 /Library/DropboxHelperTools/Dropbox_u501/dbfseventsd 4537 ?? 0:21.11 /Applications/Dropbox.app/Contents/PlugIns/garcon.appex/Contents/MacOS/garcon 5585 ttys000 0:00.00 grep Drop
2. 把dropbox进程id的优先级调低
sudo renice 10 -p 4485
过几分钟后,看到dropbox的cpu占用率降到100%以下了。
注: 关于renice命令,是用来设置进程的优先级,优先级从-20到19,优先级从大到小。
这就提供了一个思路,当某个进程占用过多的系统资源,除了终止进程,还可以通过设置优先级来调节降低占有的系统资源。
语法为:
renice 优先级 [[-p] pid ...] [[-g] pgrp ...] [[-u] 用户名 ...]