Condividi tramite


NetMsmqBinding.MaxBufferPoolSize Proprietà

Definizione

Consente di ottenere o impostare la quantità massima di memoria allocata al gestore dei buffer che riceve i messaggi dal canale.

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

Valore della proprietà

Int64

Quantità massima di memoria, espressa in byte, allocata al gestore dei buffer dei messaggi. Il valore predefinito è 524.288 (0x80000) byte.

Esempio

Il seguente codice mostra come impostare la proprietà MaxBufferPoolSize.

NetMsmqBinding binding = new NetMsmqBinding();
binding.MaxBufferPoolSize = 524000L;

Commenti

Il gestore BufferManager utilizza un pool di buffer per ridurre al minimo il costo legato all'utilizzo dei buffer. I buffer sono necessari per elaborare i messaggi provenienti dal servizio quando arrivano dal canale. Se la memoria allocata al pool di buffer per elaborare il carico dei messaggi risulta insufficiente, il gestore BufferManager deve attingere all'heap CLR per allocare memoria aggiuntiva, il che aumenta l'overhead del processo di garbage collection. Se la quantità di memoria aggiuntiva allocata in questo modo è notevolmente elevata, ciò significa che le dimensioni del pool di buffer sono troppo ridotte e che per migliorare le prestazioni è possibile allocare più risorse a tale pool mediante l'aumento del limite MaxBufferPoolSize.

Si applica a