TsgcWebSocketServerÖzellikler › QueueOptions

QueueOptions Özellik

İş parçacıkları arasındaki çekişmeyi önlemek için giden mesajları dahili bir bağlantı başına kuyruk aracılığıyla serileştirir.

Sözdizimi

property QueueOptions: TsgcWSQueueServer_Options read FQueueOptions write SetQueueOptions;

Varsayılan Değer

Text=qmNone, Binary=qmNone, Ping=qmNone

Remarks

Etkinleştirildiğinde, mesajlar dahili bir kuyruğa yerleştirilir ve çağıranın iş parçacığı yerine bağlantı iş parçacığının bağlamında gönderilir — bu, birden çok iş parçacığı aynı bağlantıya aynı anda yazdığında gereken kilitlemeyi ortadan kaldırır. Her mesaj türüne (Text, Binary, Ping) bağımsız bir öncelik düzeyi atanabilir: qmNone kuyruğu atlar (varsayılan), qmLevel1 önce işlenir, ardından qmLevel2 ve son olarak qmLevel3. Örneğin, Text ve Binary öğelerini qmLevel2 ve Ping öğesini qmLevel1 olarak ayarlamak, ping'lerin sıradan trafikten önce teslim edilmesini garanti eder. IOHandlerOptions iohIOCP olarak ayarlandığında QueueOptions desteklenmez.

Örnek


oServer := TsgcWebSocketServer.Create(nil);
oServer.QueueOptions.Text := qmLevel2;
oServer.QueueOptions.Binary := qmLevel2;
oServer.QueueOptions.Ping := qmLevel1;
oServer.Active := true;

Özelliklere Dön