Pytania otagowane jako multithreading

Wielowątkowość to zdolność komputera lub programu do wykonywania pracy jednocześnie lub asynchronicznie poprzez wykorzystanie wielu współbieżnych strumieni wykonania (ogólnie nazywanych wątkami).


5
LinkedBlockingQueue vs ConcurrentLinkedQueue
Moje pytanie dotyczy tego pytania zadanego wcześniej. W sytuacjach, w których używam kolejki do komunikacji między wątkami producenta i konsumenta, czy ludzie ogólnie zalecają używanie LinkedBlockingQueuelub ConcurrentLinkedQueue? Jakie są zalety / wady używania jednego nad drugim? Główną różnicą, którą widzę z perspektywy API, jest to, że LinkedBlockingQueuemoże być opcjonalnie ograniczony.

3
Dlaczego obiekt zamka musi być statyczny?
Bardzo często używa się prywatnego statycznego obiektu tylko do odczytu do blokowania w wielowątkowości. Rozumiem, że prywatny zmniejsza punkty wejścia do obiektu blokującego poprzez uszczelnienie hermetyzacji, a tym samym dostęp do najistotniejszych. Ale dlaczego statyczne? private static readonly object Locker = new object(); Na końcu pole jest używane tylko w …


11
Korzystanie z ThreadPool.QueueUserWorkItem w ASP.NET w scenariuszu dużego ruchu
Zawsze miałem wrażenie, że używanie ThreadPool do (powiedzmy niekrytycznych) krótkotrwałych zadań w tle jest uważane za najlepszą praktykę, nawet w ASP.NET, ale potem natknąłem się na ten artykuł, który wydaje się sugerować inaczej - Argumentem jest to, że powinieneś zostawić ThreadPool, aby zająć się żądaniami związanymi z ASP.NET. Oto jak …

7
Co byłoby lepsze w przypadku współbieżnych zadań na node.js? Włókna? Pracownicy sieciowi? lub Wątki?
Natknąłem się kiedyś na node.js i bardzo to lubię. Ale wkrótce okazało się, że bardzo brakowało mu możliwości wykonywania zadań intensywnie wykorzystujących procesor. Więc zacząłem googlować i otrzymałem te odpowiedzi, aby rozwiązać problem: Włókna, Webworkers i Wątki (thread-a-gogo). Który z nich jest mylący, a jeden z nich zdecydowanie musi być …

5
Przerwij równolegle. Przed?
Jak wyjść z pętli parallel.for ? Mam dość złożone oświadczenie, które wygląda następująco: Parallel.ForEach<ColorIndexHolder>(ColorIndex.AsEnumerable(), new Action<ColorIndexHolder>((ColorIndexHolder Element) => { if (Element.StartIndex <= I && Element.StartIndex + Element.Length >= I) { Found = true; break; } })); Korzystając z klasy równoległej, mogę zdecydowanie zoptymalizować ten proces. Jednak; Nie mogę dowiedzieć się, …

7
Ile kosztuje blokada?
Eksperymentowałem z wielowątkowością i przetwarzaniem równoległym i potrzebowałem licznika, aby wykonać podstawowe zliczanie i analizę statystyczną szybkości przetwarzania. Aby uniknąć problemów z jednoczesnym używaniem mojej klasy, użyłem instrukcji lock na zmiennej prywatnej w mojej klasie: private object mutex = new object(); public void Count(int amount) { lock(mutex) { done += …

5
Aktorzy scali: odbieraj a reaguj
Pozwolę sobie najpierw powiedzieć, że mam całkiem spore doświadczenie w Javie, ale dopiero niedawno zainteresowałem się językami funkcjonalnymi. Niedawno zacząłem patrzeć na Scalę, która wydaje się bardzo fajnym językiem. Jednak czytałem o strukturze aktora Scali w programowaniu w Scali i jest jedna rzecz, której nie rozumiem. W rozdziale 30.4 jest …






16
Android - zapobiegaj wyświetlaniu białego ekranu podczas uruchamiania
Jak wszyscy wiemy, wiele aplikacji na Androida wyświetla bardzo krótko biały ekran, zanim pojawi się ich pierwszy Activity. Ten problem jest obserwowany w następujących przypadkach: Aplikacje na Androida, które rozszerzają Applicationklasę globalną i wykonują w nich główne inicjalizacje. Application Przedmiot jest zawsze tworzona przed pierwszą Activity(fakt, że można zaobserwować w …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.