[英]How to get cpu usage percentage in macos with Swift?
我正在嘗試為MacOS做一個活動監視器(我知道有一個名為活動監視器的 mac 應用程序可以告訴我)所以我想用 Swift 獲得 cpu 使用百分比。我發現了一些類似的問題,但它們只適用於 iOS .我在Objective-C也發現了一個問題,Swift沒有,我也不是很懂Objective-C(我是Swift的人)。
您應該能夠結合使用mach
庫中的Task_info
和mach_msg_type_number_t
函數來獲取 CPU 使用率……至少 AI 是這么說的。 :)
例子:
import Foundation
import mach
func getCPUUsage() -> Float {
var kern: kern_return_t
var task_info_count: mach_msg_type_number_t
task_info_count = mach_msg_type_number_t(TASK_INFO_MAX)
var tinfo = [integer_t](repeating: 0, count: Int(task_info_count))
kern = task_info(mach_task_self_, task_flavor_t(TASK_BASIC_INFO), &tinfo, &task_info_count)
if kern != KERN_SUCCESS {
return -1
}
var taskInfo = task_basic_info()
memcpy(&taskInfo, &tinfo, Int(task_info_count))
let cpuUsage = Float(taskInfo.cpu_usage) / Float(TH_USAGE_SCALE * 100.0)
return cpuUsage
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.