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).

7
Jak utworzyć blokujący moduł ładujący w tle w Javie 8?
Pytanie Jak utworzyć właściwy moduł ładujący w tle w Javie 8? Warunki: dane powinny być ładowane w tle po załadowaniu dane powinny zostać wyświetlone podczas ładowania danych nie należy przyjmować dalszych żądań jeśli podczas ładowania danych pojawiały się żądania, po upływie określonego czasu (np. 5 sekund) należy zaplanować kolejne ładowanie …

1
Czy odrodzenie wątku samo w sobie zapewnia gwarancje kolejności pamięci?
Chcę z grubsza to zrobić: Początkowy wątek: napisz niektóre wartości do globalnych zmiennych (nigdy więcej nie zostaną zapisane) Mogą to być umiarkowanie duże dane (tablice, ciągi itp.). Nie można tego po prostu zrobić std::atomic<>. spawnuj inne wątki Inne wątki: przeczytaj stan globalny pracować, itp. Teraz wiem, że mogę przekazywać argumenty …

3
c ++ Wątki wewnątrz do drukowania w pętli niepoprawne wartości
Próbuję zrozumieć wielowątkowość w c ++, ale utknąłem w tym problemie: jeśli uruchomię wątki w pętli for, wypiszą one nieprawidłowe wartości. To jest kod: #include <iostream> #include <list> #include <thread> void print_id(int id){ printf("Hello from thread %d\n", id); } int main() { int n=5; std::list<std::thread> threads={}; for(int i=0; i<n; i++ …

4
Zbyt niskie użycie procesora wielowątkowej aplikacji Java w systemie Windows
Pracuję nad aplikacją Java do rozwiązywania problemów z optymalizacją numeryczną - a dokładniej - problemów programowania liniowego na dużą skalę. Pojedynczy problem można podzielić na mniejsze podproblemy, które można rozwiązać równolegle. Ponieważ jest więcej podproblemów niż rdzeni procesora, używam ExecutorService i definiuję każdy podproblem jako wywoływalny, który jest przesyłany do …

2
Wątek C ++ wykorzystujący obiekt funkcji, w jaki sposób wywoływanych jest wiele destruktorów, ale nie konstruktorów?
Fragment kodu znajduje się poniżej: class tFunc{ int x; public: tFunc(){ cout<<"Constructed : "<<this<<endl; x = 1; } ~tFunc(){ cout<<"Destroyed : "<<this<<endl; } void operator()(){ x += 10; cout<<"Thread running at : "<<x<<endl; } int getX(){ return x; } }; int main() { tFunc t; thread t1(t); if(t1.joinable()) { cout<<"Thread …


2
Java ThreadPoolExecutor: Aktualizacja wielkości puli podstawowej dynamicznie odrzuca przychodzące zadania sporadycznie
Występuje problem ThreadPoolExecutorpolegający na RejectedExecutionExceptiontym, że jeśli próbuję zmienić rozmiar puli podstawowej na inną liczbę po utworzeniu puli, to sporadycznie niektóre zadania są odrzucane, chociaż nigdy nie przesyłam więcej niż queueSize + maxPoolSizeliczby zadań. Problem, który próbuję rozwiązać, to rozszerzenie, ThreadPoolExecutorktóre zmienia rozmiar swoich głównych wątków w oparciu o oczekujące …

1
Czy native-reagujący obsługuje wielowątkowość i wątki w tle lub wykonywanie równoległe? Jak możemy to zrobić?
Przejrzałem oficjalną dokumentację reagujących na to, rodzimych i kilka innych źródeł i blogów, dowiedziałem się, że w Reaktywnym rodzimym wątku jest wątek UI i JavaScript . Wątek JavaScript to wątek, w którym logika będzie uruchamiać kod JavaScript, wykonywane są wywołania API, przetwarzane są zdarzenia dotykowe i wiele innych. A wątek …

4
Czy wyjaśnienie swobodnego zamawiania jest błędne w preferencjach?
W dokumentacji std::memory_orderna cppreference.com jest przykład swobodnego zamawiania: Zrelaksowane zamawianie Oznaczone operacje atomowe memory_order_relaxednie są operacjami synchronizacji; nie narzucają kolejności między dostępami do pamięci jednocześnie. Gwarantują one tylko atomowość i spójność kolejności modyfikacji. Na przykład, gdy xiy początkowo wynoszą zero, // Thread 1: r1 = y.load(std::memory_order_relaxed); // A x.store(r1, std::memory_order_relaxed); …

2
Java zatrzyma usługę modułu wykonującego, gdy jedno z jego przypisanych zadań zawiedzie z jakiegokolwiek powodu
Potrzebuję usługi, która uruchomi kilka zadań jednocześnie i w odstępie 1 sekundy przez 1 minutę. Jeśli jedno z zadań się nie powiedzie, chcę zatrzymać usługę i każde zadanie, które się z nią uruchomiło, z jakimś wskaźnikiem, że coś poszło nie tak, inaczej jeśli po minucie wszystko pójdzie dobrze, usługa zatrzyma …


1
Czy można ograniczyć liczbę wątków dla równoległego `for_each` C ++ 17?
Używam std::for_eachz std::execution::pardo wykonywania złożonych obliczeń na ogromnych danych wejściowych reprezentowanych jako wektor struktur. Obliczenia nie wymagają żadnych opóźnień związanych ze sprzętem (na przykład IO sieci lub dysku), są obliczeniami „tylko procesora”. Dla mnie wydaje się logiczne, że nie ma sensu tworzyć więcej wątków systemu operacyjnego niż mamy wątki sprzętowe; …

2
Kiedy WebView jest gotowy na migawkę ()?
JavaFX Docs państwo, że WebViewjest gotowy, kiedy Worker.State.SUCCEEDEDzostanie osiągnięta jednak chyba trochę poczekać (czyli Animation, Transition, PauseTransition, itd.), Puste strony są renderowane. Sugeruje to, że wewnątrz WebView występuje zdarzenie, które przygotowuje je do przechwytywania, ale co to jest? Na GitHubSwingFXUtils.fromFXImage znajduje się ponad 7000 fragmentów kodu, które wykorzystują, ale większość …

1
Po rozpoczęciu odłącz proces potomny spawn
Proces potomny spawn rozpoczynam w ten sposób: let process = spawn(apiPath, { detached: true }) process.unref() process.stdout.on('data', data => { /* do something */ }) Kiedy zaczynam proces, muszę go trzymać, ponieważ chcę odczytać jego dane wyjściowe. Ale tuż przed zamknięciem procesu Node (rodzic) chcę odłączyć wszystkie nieukończone procesy potomne, …

5
Jak utworzyć wiele wątków dla każdego elementu żądania
Próbuję przetworzyć poniższy kod przy użyciu wielowątkowości na poziomie zamówienia. List<String> orders = Arrays.asList("order1", "order2", "order3", "order4", "order1"); Bieżące wykonywanie sekwencyjne: orders.stream().forEach(order -> { rules.forEach(rule -> { finalList.add(beanMapper.getBean(rule) .applyRule(createTemplate.apply(getMetaData.apply(rule), command), order)); }); }); Próbowałem użyć: orders.parallelStream().forEach(order -> {}} // code snippet. Ale zmienia reguły. Dla każdego (zasada -> {}} kolejność. …

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.