Language

Process.GetExclusiveCores メソッド

定義

一部のデバイスでは、フォアグラウンド プロセスに 1 つ以上の CPU コアが専用に予約されている場合があります。

[Android.Runtime.Register("getExclusiveCores", "()[I", "", ApiSince=24)]
public static int[]? GetExclusiveCores();
[<Android.Runtime.Register("getExclusiveCores", "()[I", "", ApiSince=24)>]
static member GetExclusiveCores : unit -> int[]

返品

Int32[]

このプロセス専用の CPU コアを示す整数の配列。 この時点でこのプロセス専用の CPU コアが予約されていない場合、配列の長さは 0 になります。

属性

注釈

一部のデバイスでは、フォアグラウンド プロセスに 1 つ以上の CPU コアが専用に予約されている場合があります。 このメソッドを使用すると、呼び出し元のプロセスで sched_setaffinity() を使用してスレッドをこれらのコアにロックできるように、(存在する場合) どのコアを取得できます。 このメソッドがコアを返すには、呼び出し元プロセスがフォアグラウンドで現在実行されている必要があることに注意してください。

フォアグラウンド プロセス専用に予約された CPU コアは、プロセスがフォアグラウンドに留まる限り予約された状態を維持します。

プロセスがフォアグラウンドから離れるとすぐに、それらの CPU コアはそれのために予約されなくなり、新しいフォアグラウンド プロセス用に予約される可能性が高くなります。 フォアグラウンドを離れたときにプロセスのアフィニティを変更する必要はありません (予約コアを使用するように以前に設定していた場合)。OS は、その時点でのアフィニティのリセットを自動的に処理します。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象