WSDualHttpBinding.MaxBufferPoolSize Свойство

Определение

Возвращает или задает максимальный объем памяти в байтах, который можно выделить для диспетчера буферов сообщений, получающих сообщения на конечных точках, настроенных с этой привязкой.

public:
 property long MaxBufferPoolSize { long get(); void set(long value); };
public long MaxBufferPoolSize { get; set; }
member this.MaxBufferPoolSize : int64 with get, set
Public Property MaxBufferPoolSize As Long

Значение свойства

Максимальный размер в байтах для пула буферов, используемых конечной точкой, настроенной с этой привязкой. Значение по умолчанию — 524288 байт.

Примеры

В следующем примере показано, как задать MaxBufferPoolSize.

binding.MaxBufferPoolSize = 900000;
binding.MaxBufferPoolSize = 900000

Комментарии

Сокращает BufferManager затраты на использование буферов с буферным пулом. Буферы необходимы для обработки сообщений службой при выходе из канала. Если в буферном пуле недостаточно памяти для обработки загрузки сообщений, BufferManager необходимо выделить дополнительную память из кучи СРЕДЫ CLR, что увеличивает затраты на сборку мусора. Обширное выделение из кучи мусора среды CLR свидетельствует о том, что размер буферного пула слишком мал и что производительность можно улучшить с большим выделением, увеличив MaxBufferPoolSize ограничение.

Ограничения на размер буфера, заданные здесь, предназначены для оптимизации производительности обмена сообщениями. Если сообщение превышает максимальное значение для буфера, оно не удаляется. Вместо этого требуется больше памяти из кучи среды CLR, и это вызывает больше затрат на сборку мусора, чем использование буферов.

Применяется к