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).
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 …
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 …
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++ …
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 …
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 …
Próbuję funkcji wielowątkowości Julia 1.3na następującym sprzęcie: Model Name: MacBook Pro Processor Name: Intel Core i7 Processor Speed: 2.8 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB Hyper-Threading Technology: Enabled Memory: 16 GB Podczas uruchamiania następującego skryptu: function …
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 …
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 …
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); …
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 …
Po patrząc na kiść z innymi pytaniami i ich odpowiedzi , mam wrażenie, że nie ma powszechnej zgody na to, co „lotny” słowo kluczowe w C oznacza dokładnie. Nawet sam standard nie wydaje się wystarczająco jasny, aby wszyscy mogli się zgodzić co to znaczy . Wśród innych problemów: Wydaje się, …
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; …
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ść …
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, …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.