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).
Używam zadań do uruchamiania długotrwałych wywołań serwera w moim ViewModel, a wyniki są kierowane z powrotem przy Dispatcherużyciu TaskScheduler.FromSyncronizationContext(). Na przykład: var context = TaskScheduler.FromCurrentSynchronizationContext(); this.Message = "Loading..."; Task task = Task.Factory.StartNew(() => { ... }) .ContinueWith(x => this.Message = "Completed" , context); Działa to dobrze, gdy uruchamiam aplikację. Ale …
Mam zapytanie związane z realizacją wątków w Linuksie. Linux nie ma wyraźnej obsługi wątków. W przestrzeni użytkownika możemy użyć biblioteki wątków (takiej jak NPTL) do tworzenia wątków. Teraz, jeśli używamy NPTL, obsługuje mapowanie 1: 1. Jądro użyje tej clone()funkcji do zaimplementowania wątków. Załóżmy, że utworzyłem 4 wątki. Wtedy oznaczałoby to, …
Czy System.Timers.Timer upływa w osobnym wątku niż wątek, który go utworzył? Powiedzmy, że mam zajęcia ze stoperem, który uruchamia się co 5 sekund. Po uruchomieniu licznika czasu w metodzie elapsed jakiś obiekt jest modyfikowany. Powiedzmy, że modyfikacja tego obiektu zajmuje dużo czasu, np. 10 sekund. Czy to możliwe, że w …
Jestem trochę zdezorientowany, czy wielowątkowość działa w Pythonie, czy nie. Wiem, że było wiele pytań na ten temat i przeczytałem wiele z nich, ale nadal jestem zdezorientowany. Wiem z własnego doświadczenia i widziałem, jak inni publikują własne odpowiedzi i przykłady tutaj na StackOverflow, że wielowątkowość jest rzeczywiście możliwa w Pythonie. …
Używam języka Java i chcę, aby serwlet działał nieprzerwanie w mojej aplikacji, ale nie rozumiem, jak to zrobić. Mój serwlet ma metodę, która codziennie podaje liczbę użytkowników z bazy danych, a także całkowitą liczbę użytkowników z całej bazy danych. Dlatego chcę, aby serwlet działał nieprzerwanie.
Dlaczego i++atomic nie jest w Javie? Aby zagłębić się w Javę, spróbowałem policzyć, jak często wykonywane są pętle w wątkach. Więc użyłem private static int total = 0; w klasie głównej. Mam dwa wątki. Wątek 1: Wydruki System.out.println("Hello from Thread 1!"); Wątek 2: Wydruki System.out.println("Hello from Thread 2!"); Liczę wiersze …
Podczas wykonywania programu wielowątkowego pojawia się następujący błąd java.lang.OutOfMemoryError: Java heap space Powyższy błąd wystąpił w jednym z wątków. O ile mi wiadomo, przestrzeń sterty jest zajmowana tylko przez zmienne instancji. Jeśli to prawda, to dlaczego ten błąd wystąpił po pewnym czasie działania poprawnie, ponieważ na przykład zmienne są przydzielane …
Mam program, który generuje wątki (~ 5-150), które wykonują kilka zadań. Początkowo użyłem a, FixedThreadPoolponieważ to podobne pytanie sugerowało, że lepiej nadają się do dłuższych zadań, a przy mojej bardzo ograniczonej wiedzy na temat wielowątkowości, uznałem średni czas życia wątków (kilka minut) za „ długi czas ”. Jednak ostatnio dodałem …
Otrzymuję błąd C ++ z wątkami: terminate called without an active exception Aborted Oto kod: #include <queue> #include <thread> #include <mutex> #include <condition_variable> template<typename TYPE> class blocking_stream { public: blocking_stream(size_t max_buffer_size_) : max_buffer_size(max_buffer_size_) { } //PUSH data into the buffer blocking_stream &operator<<(TYPE &other) { std::unique_lock<std::mutex> mtx_lock(mtx); while(buffer.size()>=max_buffer_size) stop_if_full.wait(mtx_lock); buffer.push(std::move(other)); mtx_lock.unlock(); …
Jaki jest najlepszy sposób uruchamiania kodu w oddzielnym wątku? Czy to: [NSThread detachNewThreadSelector: @selector(doStuff) toTarget:self withObject:NULL]; Lub: NSOperationQueue *queue = [NSOperationQueue new]; NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(doStuff:) object:nil; [queue addOperation:operation]; [operation release]; [queue release]; Robiłem drugi sposób, ale książka Wesley Cookbook, którą czytałem, używa pierwszego.
Tworzę aplikację, w której muszę aktualizować jakieś informacje za każdym razem, gdy użytkownik loguje się do systemu, korzystam również z bazy danych w telefonie. Do wszystkich tych operacji (aktualizacje, pobieranie danych z bazy danych itp.) Używam zadań asynchronicznych. Do tej pory nie widziałem, dlaczego nie powinienem ich używać, ale ostatnio …
Mój nauczyciel z wyższego poziomu Java na temat wątków powiedział coś, czego nie byłem pewien. Stwierdził, że poniższy kod niekoniecznie zaktualizuje readyzmienną. Według niego, dwa wątki niekoniecznie współdzielą zmienną statyczną, szczególnie w przypadku, gdy każdy wątek (wątek główny versus ReaderThread) działa na swoim własnym procesorze i dlatego nie ma tych …
class ThreadSafeClass extends Thread { private static int count = 0; public synchronized static void increment() { count++; } public synchronized void decrement() { count--; } } Czy ktoś może wyjaśnić, dlaczego powyższa klasa nie jest bezpieczna wątkowo?
Szukam implementacji ExecutorService, która może być dostarczona z limitem czasu. Zadania przesłane do ExecutorService są przerywane, jeśli ich uruchomienie trwa dłużej niż limit czasu. Wdrożenie takiej bestii nie jest trudnym zadaniem, ale zastanawiam się, czy ktoś wie o istniejącej implementacji. Oto, co wymyśliłem na podstawie części dyskusji poniżej. Jakieś uwagi? …
Mam metodę z rozszerzeniem HandlerThread. Wartość zostaje zmieniona wewnątrz Threadi chciałbym zwrócić ją do test()metody. Czy jest na to sposób? public void test() { Thread uiThread = new HandlerThread("UIHandler"){ public synchronized void run(){ int value; value = 2; //To be returned to test() } }; uiThread.start(); }
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.