다음을 통해 공유


PartyThreadId

내부 처리 작업의 개략적인 분류입니다.

구문

enum class PartyThreadId    
{  
    Audio = 0,  
    Networking = 1,  
}  

상수

상수 설명
오디오 오디오와 관련된 내부 처리 작업을 나타냅니다.
네트워킹 네트워킹과 관련된 내부 처리 작업을 나타냅니다.

비고

PartyManager::GetWorkMode()PartyManager::SetWorkMode()와 함께 사용하면 타이틀이 연결된 내부 처리 작업에 대한 작업 모드를 각각 읽고 쓸 수 있습니다. 내부 처리 작업과 타이틀의 상호 작용은 현재 구성된 작업 모드에 따라 크게 달라집니다.

PartyThreadId::Audio 작업 모드가 PartyWorkMode::Automatic으로 설정된 경우 파티 라이브러리는 실시간 요구 사항이 있는 내부적으로 관리되는 높은 우선순위의 자주 실행되는 스레드를 사용하여 작업을 수행합니다. Windows 및 Xbox 콘솔에서 이러한 오디오 스레드는 40밀리초마다 XAudio2와 직접 상호 작용합니다. XAudio2의 파티 라이브러리 인스턴스는 PartyManager::SetThreadAffinityMask()를 통해 PartyThreadId::Audio에 대해 구성된 프로세서 선호도에 해당하는 프로세서 선호도로 초기화됩니다. 이 스레드 유형에 대해 프로세서 번호가 지정되지 않은 경우 XAudio2 인스턴스는 XAUDIO2_DEFAULT_PROCESSOR 프로세서 선호도로 초기화됩니다.

PartyThreadId::Networking 작업 모드를 PartyWorkMode::Automatic로 설정하면 네트워킹 스레드가 내부적으로 만들어지고 관리됩니다. 이러한 스레드는 네트워크 I/O 및 폴링 메커니즘 모두에서 구동되며, 16밀리초에서 100밀리초마다 또는 네트워크 트래픽이 수신될 때마다 해제됩니다. 이러한 PartyThreadId::Networking 스레드에 대한 프로세서 선호도는 선택적으로 PartyManager::SetThreadAffinityMask()를 통해 구성됩니다.

PartyWorkMode::Manual로 설정된 PartyThreadId 형식 작업 모드의 경우 파티 라이브러리는 내부 작업자 스레드를 만들지 않으며 대신 PartyManager::D oWork()에 대한 주기적인 호출을 통해 필요한 처리를 수행하는 것이 타이틀의 책임입니다. 작업 모드가 PartyWorkMode::Automatic인 경우 해당 타이틀 호출의 주기성은 내부 스레드에서 사용하는 최소 폴링 빈도와 일치하거나 초과해야 합니다.

요구 사항

헤더: Party.h

참고 항목

파티 멤버
PartyManager::GetThreadAffinityMask
PartyManager::SetThreadAffinityMask
PartyManager::SetWorkMode
PartyManager::GetWorkMode
PartyManager::DoWork