Chyba: Předávání velkého množství dat v .NET Remoting volání způsobí neočekávané výjimce dochází

Překlady článku Překlady článku
ID článku: 322975 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Příznaky

Pomocí .NET Remoting můžete povolit instance typu, které mohou být serializován jako parametry metody předávané mezi klientem a serverové aplikace. Však pokud je instance typu předaná velmi velké (desítky megabajtů), klient Remoting spotřebuje velké množství virtuální paměti a poté vygeneruje neočekávané výjimky. Výjimky může být výjimka OutOfMemoryException nebo SocketException výjimku. Potvrzení poplatek, jak můžete vidět ve Správci úloh je také velmi vysoké.

Příčina

To je z důvodu chyby v systému .NET Remoting.

Řešení

Chcete-li tento problém vyřešit, předejte menší objemy dat pomocí vzdáleného volání. Objekt Stream můžete také předat jako parametr metody. Datový proud objekty dědí třídy MarshalByRefObject. Objekt Stream slouží k načtení dat v menší bloky.

Prohlášení

Microsoft potvrzuje, že se to chybu v Microsoft produktech, které jsou uvedeny na začátku tohoto článku.

Další informace

Hostitelem Remoting hostitele je níže třídy a je volána metoda klientem Remoting, problému. Následující fragment kódu znázorňuje problému:

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

Vlastnosti

ID článku: 322975 - Poslední aktualizace: 28. února 2014 - Revize: 4.4
Informace v tomto článku jsou určeny pro produkt:
  • 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
Klíčová slova: 
kbnosurvey kbarchive kbmt kbbug kbremoting KB322975 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:322975

Dejte nám zpětnou vazbu

 

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