PartyThreadId
Allgemeine Kategorisierung interner Verarbeitungsaufgaben.
Syntax
enum class PartyThreadId
{
Audio = 0,
Networking = 1,
}
Konstanten
Konstante | Beschreibung |
---|---|
Audio | Stellt die interne Verarbeitungsaufgabe im Zusammenhang mit Audio dar. |
Networking | Stellt die interne Verarbeitungsaufgabe im Zusammenhang mit Netzwerken dar. |
Hinweise
Bei Verwendung mit PartyManager::GetWorkMode() und PartyManager::SetWorkMode() kann der Titel den Arbeitsmodus für die zugeordnete interne Verarbeitungsaufgabe lesen und schreiben. Die Titelinteraktion mit der internen Verarbeitungsaufgabe unterscheidet sich stark vom aktuell konfigurierten Arbeitsmodus.
Wenn der Arbeitsmodus "PartyThreadId::Audio" auf "PartyWorkMode::Automatic" festgelegt ist, führt die Parteibibliothek die Aufgabe mit intern verwalteten, mit hoher Priorität und häufig ausgeführten Threads mit Echtzeitanforderungen aus. Auf Windows- und Xbox-Konsolen interagieren diese Audiothreads alle 40 Millisekunden direkt mit XAudio2. Parteibibliotheksinstanzen von XAudio2 werden mit einer Prozessoraffinität initialisiert, die der für PartyThreadId::Audio über PartyManager::SetThreadAffinityMask()konfigurierten Prozessoraffinität entspricht. Wenn keine Prozessoraffinität für den Audiothreadtyp angegeben ist, wird die instance von XAudio2 mit einer Prozessoraffinität von XAUDIO2_DEFAULT_PROCESSOR initialisiert.
Wenn der Arbeitsmodus PartyThreadId::Networking auf PartyWorkMode::Automatic festgelegt ist, werden Netzwerkthreads intern erstellt und verwaltet. Diese Threads werden sowohl von Netzwerk-E/A- als auch von Abrufmechanismen gesteuert und werden alle 16 Millisekunden bis zu 100 Millisekunden oder immer dann aktiviert, wenn Netzwerkdatenverkehr empfangen wird. Die Prozessoraffinität für diese PartyThreadId::Networking-Threads wird optional über PartyManager::SetThreadAffinityMask() konfiguriert.
Für jeden auf PartyWorkMode::Manual festgelegten Arbeitsmodus des PartyThreadId-Typs erstellt die Parteibibliothek keine internen Arbeitsthreads. Stattdessen liegt es in der Verantwortung des Titels, die erforderliche Verarbeitung über regelmäßige Aufrufe von PartyManager::D oWork() auszuführen. Die Periodizität dieser Titelaufrufe sollte den mindesten Abrufhäufigkeiten entsprechen oder überschreiten, die von den internen Threads verwendet werden, wenn der Arbeitsmodus PartyWorkMode::Automatic ist.
Voraussetzungen
Header: Party.h
Weitere Informationen
Party-Mitglieder
PartyManager::GetThreadAffinityMask
PartyManager::SetThreadAffinityMask
PartyManager::SetWorkMode
PartyManager::GetWorkMode
PartyManager::D oWork