Process.ProcessorAffinity Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállítja azokat a processzorokat, amelyeken a folyamat szálai ütemezhetők.
public:
property IntPtr ProcessorAffinity { IntPtr get(); void set(IntPtr value); };
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
[System.Runtime.Versioning.SupportedOSPlatform("linux")]
public IntPtr ProcessorAffinity { get; set; }
public IntPtr ProcessorAffinity { get; set; }
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
[<System.Runtime.Versioning.SupportedOSPlatform("linux")>]
member this.ProcessorAffinity : nativeint with get, set
member this.ProcessorAffinity : nativeint with get, set
Public Property ProcessorAffinity As IntPtr
Tulajdonság értéke
nativeint
Egy bitmaszk, amely azokat a processzorokat jelöli, amelyeken a társított folyamat szálai futtathatók. Az alapértelmezett beállítás a számítógép processzorainak számától függ. Az alapértelmezett érték 2 n -1, ahol n a processzorok száma.
- Attribútumok
Kivételek
ProcessorAffinity nem állíthatók be és nem kérhetők le a kapcsolódó folyamaterőforrásból.
-vagy-
A folyamatazonosító vagy a folyamatleíró értéke nulla. (A folyamat nem indult el.)
Egy távoli számítógépen futó folyamat tulajdonságához próbál hozzáférni ProcessorAffinity . Ez a tulajdonság csak a helyi számítógépen futó folyamatokhoz érhető el.
Megjegyzések
A tulajdonság által visszaadott érték a folyamat legutóbb frissített affinitását jelöli. A legfrissebb affinitás eléréséhez először meg kell hívnia Refresh() a metódust.
A 2000-Windows és újabb verziókban a folyamat szálai processzorról processzorra migrálhatók, és minden áttelepítés újra betölti a processzorgyorsítótárat. Nagy rendszerterhelések esetén a processzorgyorsítótár újratöltésének hányszoros csökkentésével javíthatja a teljesítményt, ha megadja, hogy melyik processzornak kell futtatnia egy adott szálat. A processzor és a szál közötti társítást processzor-affinitásnak nevezzük.
Minden processzor egy kicsit jelenik meg. A 0. bit egy processzor, az 1. bit a második processzor, és így tovább. Ha egy kicsit az 1 értéket állítja be, a megfelelő processzor lesz kiválasztva a szál-hozzárendeléshez. Amikor nullára állítja az ProcessorAffinity értéket, az operációs rendszer ütemezési algoritmusai beállítják a szál affinitását. Ha az ProcessorAffinity érték bármilyen nemzero értékre van állítva, az érték bitmaszkként lesz értelmezve, amely meghatározza a választásra jogosult processzorokat.
Az alábbi táblázat egy nyolc processzoros rendszer értékeinek kiválasztását ProcessorAffinity mutatja be.
| Bitmaszk | Bináris érték | Jogosult processzorok |
|---|---|---|
| 0x0001 | 00000000 00000001 | 1 |
| 0x0003 | 00000000 00000011 | 1 és 2 |
| 0x0007 | 00000000 00000111 | 1, 2 és 3 |
| 0x0009 | 00000000 00001001 | 1 és 4 |
| 0x007F | 00000000 01111111 | 1, 2, 3, 4, 5, 6 és 7 |