BOGUE : qui passent de grandes quantités de données dans les appels .NET Remoting provoque une exception inattendue à

Traductions disponibles Traductions disponibles
Numéro d'article: 322975 - Voir les produits auxquels s'applique cet article
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Agrandir tout | Réduire tout

Symptômes

Vous pouvez utiliser .NET Remoting pour autoriser les instances de tout type peut être sérialisé d'être transmises sous forme de paramètres de méthode entre le client et les applications serveur. Toutefois, si l'instance de type qui est transmis est très volumineuses (dizaines de méga-octets), le client d'accès à distance utilise de grandes quantités de mémoire virtuelle et génère ensuite des exceptions inattendues. Les exceptions peuvent être exception OutOfMemoryException ou SocketException exception. Les frais de la validation comme indiqué dans le Gestionnaire des tâches sont également très élevé.

Cause

Il est en raison d'un bogue dans le système .NET Remoting.

Résolution

Pour contourner ce problème, transmettez plus petites quantités de données avec chaque appel transférée distance. Vous pouvez également transmettre un objet Stream en tant que paramètre de méthode. les objets Stream héritent MarshalByRefObject . Vous pouvez utiliser l'objet Stream pour extraire des données en segments plus petits.

Statut

Microsoft a confirmé le que de ce bogue dans le Microsoft produits répertoriés au début de cet article.

Plus d'informations

Lorsque la classe ci-dessous est hébergée dans un ordinateur hôte accès à distance, la méthode est appelée par un client d'accès à distance, le problème se produit. Le fragment de code suivant illustre le problème :

	public class MBRClass : MarshalByRefObject
	{
		public byte[] GetBigByteArray ()
		{
			byte[] byteArray = new byte[60000000] ;
			return byteArray ;
		}
	}
				

Propriétés

Numéro d'article: 322975 - Dernière mise à jour: jeudi 27 février 2014 - Version: 4.4
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.0 Service Pack 1
  • Microsoft .NET Framework 1.0 Service Pack 2
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.1 Service Pack 1
Mots-clés : 
kbnosurvey kbarchive kbmt kbbug kbremoting KB322975 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 322975
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com