「Xamarin.AndroidでCPUのクロック周波数を取得する」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
(ページの作成:「Linuxでよくあるsysfsから取得する方法がAndroidでも使える。 == 実装例 == <source lang="csharp"> int GetMinFreq(int core) { return Re…」)
 
(相違点なし)

2021年4月20日 (火) 07:03時点における最新版

Linuxでよくあるsysfsから取得する方法がAndroidでも使える。

実装例[編集 | ソースを編集]

int GetMinFreq(int core)
{
    return ReadIntValue($"/sys/devices/system/cpu/cpu{core}/cpufreq/cpuinfo_min_freq");
}

int GetMaxFreq(int core)
{
    return ReadIntValue($"/sys/devices/system/cpu/cpu{core}/cpufreq/cpuinfo_max_freq");
}

int GetCurFreq(int core)
{
    return ReadIntValue($"/sys/devices/system/cpu/cpu{core}/cpufreq/scaling_cur_freq");
}

int ReadIntValue(string path)
{
    if (!File.Exists(path))
    {
        return -1;
    }
    var text = File.ReadAllText(path);
    if (!int.TryParse(text, out var value))
    {
        return -1;
    }

    return value;
}