2010-12-29 13 views

Odpowiedz

9

To brzmi po prostu tak, jak próbujesz wykonać dwie różne operacje na tym samym strumieniu w tym samym czasie z różnych wątków. Dodawanie wartości lock (Monitor) lub Mutex powinno pomóc zsynchronizować dostęp do strumienia.

+0

Jest to zgodne z projektem. Niektóre wątki odczytują dane z sieci i zapisują je do strumienia (to strumień wewnętrzny, używam 'HttpWebResponse'), a jednocześnie inny wątek odczytuje dane. Myślałem, że dzieje się tak z powodu jednoczesnych odczytów lub jednoczesnych zapisów w tym samym strumieniu (?). Czy powinienem używać strumienia pamięci jako mediatora? – Xaqron

+1

@Xaqron - dostęp do tego samego * strumienia * może być w porządku; ale nadal musisz przeplatać/synchronizować dostęp; tj. nie powinien podejmować prób odczytu i zapisu ** dokładnie w tym samym czasie **; RWRWRWRW powinno działać, tak jak powinno RRWRRWRRW, WWWRWWWRWWWRRRRWRWWWRWRW itd. - problem polega na próbie dwóch rzeczy ** w tej samej chwili ** –

+2

@Xaqron niestety, nie mam glifu na mojej klawiaturze dla R overstamping W ... –

Powiązane problemy