TsgcWebSocketHTTPServer › 속성 › QueueOptions
스레드 간 경합을 방지하기 위해 내부 연결별 큐를 통해 발신 메시지를 직렬화합니다.
__property TsgcWSQueueServer_Options * QueueOptions;
Text=qmNone, Binary=qmNone, Ping=qmNone
활성화되면 메시지가 내부 큐에 배치되고 호출자의 스레드 대신 연결 스레드의 컨텍스트에서 전송됩니다. 이렇게 하면 여러 스레드가 동일한 연결에 동시에 쓸 때 필요한 잠금이 제거됩니다. 각 메시지 유형(Text, Binary, Ping)에 독립적인 우선순위 수준을 할당할 수 있습니다. qmNone은 큐를 건너뛰고(기본값), qmLevel1이 먼저 처리되고, 그 다음 qmLevel2, 마지막으로 qmLevel3이 처리됩니다. 예를 들어 Text 및 Binary를 qmLevel2로, Ping을 qmLevel1로 설정하면 ping이 일반 트래픽보다 먼저 전달되는 것이 보장됩니다. IOHandlerOptions가 iohIOCP로 설정된 경우 QueueOptions는 지원되지 않습니다.
oServer = new TsgcWebSocketHTTPServer();
oServer->QueueOptions->Text = qmLevel2;
oServer->QueueOptions->Binary = qmLevel2;
oServer->QueueOptions->Ping = qmLevel1;
oServer->Active = true;