Rozumiem, co to jest livelock, ale zastanawiałem się, czy ktoś ma dobry przykład oparty na kodzie? I kodem oparte, ja nie znaczy „dwie osoby próbują ominąć siebie w korytarzu”. Jeśli jeszcze raz to przeczytam, stracę lunch.
Rozumiem, co to jest livelock, ale zastanawiałem się, czy ktoś ma dobry przykład oparty na kodzie? I kodem oparte, ja nie znaczy „dwie osoby próbują ominąć siebie w korytarzu”. Jeśli jeszcze raz to przeczytam, stracę lunch.
Istnieje przypadek, w którym mapa zostanie skonstruowana i po zainicjowaniu nigdy nie zostanie ponownie zmodyfikowana. Dostęp do niego będzie jednak możliwy (tylko przez get (klucz)) z wielu wątków. Czy używanie java.util.HashMapw ten sposób jest bezpieczne ? (Obecnie szczęśliwie używam a...
Sortowanie zajmuje O (n log n) w przypadku szeregowym. Jeśli mamy O (n) procesorów, liczylibyśmy na liniowe przyspieszenie. Istnieją algorytmy równoległe O (log n), ale mają one bardzo wysoką stałą. Nie mają również zastosowania na standardowym sprzęcie, który nie ma w pobliżu procesorów O (n)....
Wydaje się, że istnieje wiele różnych implementacji i sposobów generowania zestawów bezpiecznych dla wątków w Javie. Oto kilka przykładów 1) CopyOnWriteArraySet 2) Collections.synchronizedSet (zestaw zestaw) 3) ConcurrentSkipListSet 4) Collections.newSetFromMap (nowy ConcurrentHashMap ()) 5)...
Czy jest jakaś różnica między volatileodwołaniem do obiektu i AtomicReferencena wypadek, gdybym po prostu użył get()i set()-methods z
Z JavaDocs: ConcurrentLinkedQueue jest właściwym wyborem, gdy wiele wątków będzie współużytkować dostęp do wspólnej kolekcji. Ta kolejka nie zezwala na elementy puste. ArrayBlockingQueue to klasyczny „ograniczony bufor”, w którym tablica o stałej wielkości zawiera elementy wstawiane przez...
Nie mogłem znaleźć wystarczających informacji o ConcurrentDictionarytypach, więc pomyślałem, że zapytam o to tutaj. Obecnie używam a, Dictionaryaby zatrzymać wszystkich użytkowników, do których stale uzyskuje dostęp wiele wątków (z puli wątków, więc nie ma dokładnej liczby wątków) i ma...
Do jakiego monitora odnosi się programowanie współbieżne w języku Java? Kiedy czytam, że „każdy obiekt ma powiązany monitor”, co to oznacza? Czy to specjalny obiekt?
Jeśli istnieją dwa wątki uzyskujące dostęp do zmiennej globalnej, wiele samouczków mówi, że zmienna jest ulotna, aby zapobiec buforowaniu zmiennej przez kompilator w rejestrze, a tym samym niepoprawnej aktualizacji. Jednak dwa wątki, które uzyskują dostęp do wspólnej zmiennej, są czymś, co wymaga...
Ostatnio przyglądałem się gorutynom Go i pomyślałem, że fajnie byłoby mieć coś podobnego w Javie. O ile szukałem, powszechnym sposobem zrównoleglenia wywołania metody jest zrobienie czegoś takiego: final String x = "somethingelse"; new Thread(new Runnable() { public void run() {...
Wydaje się, że niemożliwe jest utworzenie buforowanej puli wątków z ograniczeniem liczby wątków, które może ona utworzyć. Oto jak static Executors.newCachedThreadPool jest zaimplementowane w standardowej bibliotece Java: public static ExecutorService newCachedThreadPool() { return new...
Co oznacza użycie jawnego ogrodzenia
W porównaniu z poprzednim kodem dla klasy RulyCanceler , chciałem uruchomić kod przy użyciu CancellationTokenSource. Jak go używać, jak wspomniano w tokenach anulowania , tj. Bez rzucania / łapania wyjątku? Czy mogę korzystać z IsCancellationRequestednieruchomości? Próbowałem tego użyć w ten...
Staram się w pełni zrozumieć kolejki równoległe i szeregowe w GCD. Mam pewne problemy i mam nadzieję, że ktoś może mi odpowiedzieć jasno i na temat. Czytam, że kolejki szeregowe są tworzone i używane do wykonywania zadań jedna po drugiej. Jednak co się stanie, jeśli: Tworzę kolejkę...
Jaka jest różnica między metodami lazySeti ? Dokumentacji nie ma wiele do powiedzenia na temat :setAtomicIntegerlazySet Ostatecznie ustawia się na podaną wartość. Wydaje się, że przechowywana wartość nie zostanie natychmiast ustawiona na żądaną wartość, ale zamiast tego zostanie zaplanowana do...
Czy ktoś może podać proste (ale nie prostsze niż to możliwe) wyjaśnienie transakcji w odniesieniu do informatyki (nawet jeśli zostało skopiowane z Wikipedii)?
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ą...
Trudno powiedzieć, o co się tutaj pyta. Pytanie to jest niejednoznaczne, niejasne, niekompletne, zbyt szerokie lub retoryczne i nie można na nie rozsądnie odpowiedzieć w obecnej formie. Aby uzyskać pomoc w wyjaśnieniu tego pytania i ponownym otwarciu, odwiedź Centrum pomocy ....
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...
Po przeczytaniu książki kucharskiej JSR-133 dla autorów kompilatorów o implementacji ulotnych, szczególnie sekcji "Interakcje z instrukcjami Atomic", zakładam, że odczyt zmiennej ulotnej bez aktualizacji wymaga LoadLoad lub bariery LoadStore. W dalszej części strony widzę, że LoadLoad i LoadStore...