2016-04-08 3 views
0

J'ai un service Windows qui exécute simultanément plusieurs appels asynchrones à un service WCF (en utilisant une boucle Parallel.Foreach).System.OutOfMemoryException sur plusieurs appels asynchrones à un service WCF

Le service WCF génère plusieurs exceptions System.OutOfMemory.

Y a-t-il quelque chose que je dois configurer pour que le multithreading fonctionne correctement? J'étais d'accord que IIS a géré les ressources de filetage .. Je crois que ma compréhension est incorrecte.

Toute aide serait grandement appréciée.

+0

Quels travaux sont entrepris chaque fois que le service est appelé? – MattC

+0

faire moins d'appels. mais je ne pense pas qu'il y ait autre chose que vous puissiez faire. Et si la mémoire est causée par un seul appel? –

+0

est-ce qu'un seul appel est terminé? Que fait votre WCF? Un code? – harmoniemand

Répondre

-2

ajouter à votre web.config:

<bindings> 
    <basicHttpBinding> 
    <binding maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text"> 
     <readerQuotas maxDepth="2000000" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> 
    </binding> 
    </basicHttpBinding> 
</bindings>