TsgcWebSocketServer_HTTPAPI › Eigenschaften › QueueOptions
Serialisiert ausgehende Nachrichten über eine interne Warteschlange pro Verbindung, um Konkurrenz zwischen Threads zu vermeiden.
property QueueOptions: TsgcWSQueueServer_Options read FQueueOptions write SetQueueOptions;
Text=qmNone, Binary=qmNone, Ping=qmNone
Wenn aktiviert, werden Nachrichten in eine interne Queue gestellt und im Kontext des Verbindungsthreads anstatt im Thread des Aufrufers gesendet — dies beseitigt die Sperrung, die erforderlich ist, wenn mehrere Threads gleichzeitig in dieselbe Verbindung schreiben. Jedem Nachrichtentyp (Text, Binary, Ping) kann eine unabhängige Prioritätsstufe zugewiesen werden: qmNone überspringt die Queue (Standard), qmLevel1 wird zuerst verarbeitet, dann qmLevel2 und schließlich qmLevel3. Zum Beispiel garantiert das Setzen von Text und Binary auf qmLevel2 und Ping auf qmLevel1, dass Pings vor dem gewöhnlichen Verkehr geliefert werden.
oServer := TsgcWebSocketServer_HTTPAPI.Create(nil);
oServer.QueueOptions.Text := qmLevel2;
oServer.QueueOptions.Binary := qmLevel2;
oServer.QueueOptions.Ping := qmLevel1;
oServer.Active := true;