我需要能够知道网络浏览器已打开的所有文件(最特别是Google Chrome)。
现在,我只能通过lsof
找到所需的结果,因为这是一个相当低级别的操作系统请求。基本上,我使用lsof
,然后浏览返回的列表,确定是否正在下载任何文件,然后根据此结果采取一些措施。
我遇到的问题是,lsof
即使是美好的一天也是CPU猪。有时我碰到了lsof
疯了的墙,lsof
必须手动杀死。我必须相信,Chrome似乎做了一些有趣的事情,好像它是唯一引起lsof
麻烦的应用程序。
我希望有一种更好的检测下载活动的方法,但还没有提出可靠的建议。
Chrome似乎打开了lsof
无法处理的某种文件句柄,或导致它占用了大量的CPU时间。 (我想知道问题是否可能是Chrome用作其自己的私有虚拟内存系统的巨大内存映射文件?)由于此问题并没有一直发生,因此我试图寻找lsof
可能表现更好的macOS选项...