大maxBufferSize
是否可能导致内存不足异常? (System.InsufficientMemoryException: Failed to allocate a managed memory buffer of 67108864 bytes. The amount of available memory may be low.
)?
答案 0 :(得分:0)
是和否。降低缓冲区大小肯定有助于消除错误,但WCF在需要之前不会分配内存。所以显然你正在尝试发送需要超过67mb内存的东西来发送/接收。在这种情况下,降低缓冲区大小只会导致发送/接收失败,除非您调整其他内容。
如果适用,请尝试此解决方案:wcf error while communicating large data
如果您可以在客户端和服务器端点上,那么它的主旨是尝试打开流模式。
...
<basicHttpBinding>
<binding name="your_binding" maxReceivedMessageSize="your_max"
transferMode="Streamed"/>
</basicHttpBinding>
...