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


9
Tworzenie blokującej kolejki Queue <T> w .NET?
Mam scenariusz, w którym mam wiele wątków dodających do kolejki i wiele wątków odczytujących z tej samej kolejki. Jeśli kolejka osiągnie określony rozmiar, wszystkie wątki , które wypełniają kolejkę, zostaną zablokowane przy dodawaniu, dopóki element nie zostanie usunięty z kolejki. Poniższe rozwiązanie jest tym, czego teraz używam, a moje pytanie …



17
Co to jest impas?
Podczas pisania aplikacji wielowątkowych jednym z najczęściej występujących problemów są zakleszczenia. Moje pytania do społeczności to: Co to jest impas? Jak je wykrywasz? Czy sobie z nimi radzisz? I wreszcie, jak im zapobiegasz?

1
Dlaczego „while (true)” bez „Thread.sleep” powoduje 100% użycie procesora w systemie Linux, ale nie w systemie Windows?
Stworzyłem prosty program w java: public static void main(String[] args) throws InterruptedException { while (true) ; } Jeśli uruchomię to na komputerze z systemem Linux, pokazuje 100% użycie procesora, ale nie powoduje spowolnienia systemu operacyjnego. Jeśli jednak uruchomię dokładnie ten sam kod w systemie Windows, pokazuje on tylko około 20% …

7
Zaimplementuj ogólny limit czasu C #
Szukam dobrych pomysłów na implementację ogólnego sposobu wykonywania pojedynczego wiersza (lub anonimowego delegata) kodu z przekroczeniem limitu czasu. TemperamentalClass tc = new TemperamentalClass(); tc.DoSomething(); // normally runs in 30 sec. Want to error at 1 min Szukam rozwiązania, które będzie można elegancko zaimplementować w wielu miejscach, w których mój kod …


10
Co oznacza ten kod dołączania do wątków?
Co w tym kodzie oznaczają dwa łączenia i przerwy? t1.join()powoduje t2zatrzymanie do t1zakończenia? Thread t1 = new Thread(new EventThread("e1")); t1.start(); Thread t2 = new Thread(new EventThread("e2")); t2.start(); while (true) { try { t1.join(); t2.join(); break; } catch (InterruptedException e) { e.printStackTrace(); } }

5
Czy iteracja wartości ConcurrentHashMap jest bezpieczna dla wątków?
W javadoc dla ConcurrentHashMap jest następujący: Operacje pobierania (w tym get) na ogół nie blokują się, więc mogą nakładać się na operacje aktualizacji (w tym operacje przesyłania i usuwania). Pobieranie odzwierciedla wyniki ostatnio zakończonych operacji aktualizacji, które miały miejsce w momencie ich rozpoczęcia. W przypadku operacji zagregowanych, takich jak putAll …


2
Argumenty ciągów wątkowości w Pythonie
Mam problem z wątkami w Pythonie i wysyłaniem ciągu w argumentach. def processLine(line) : print "hello"; return; . dRecieved = connFile.readline(); processThread = threading.Thread(target=processLine, args=(dRecieved)); processThread.start(); Gdzie dRecieved to ciąg jednego wiersza odczytywanego przez połączenie. Wywołuje prostą funkcję, która w tej chwili ma tylko jedno zadanie drukowania „cześć”. Jednak pojawia …



7
Czy mądrze jest zamienić boost :: thread i boost :: mutex na odpowiedniki c ++ 11?
Motywacja: powód, dla którego rozważam to, że mój genialny kierownik projektu uważa, że ​​doładowanie jest kolejną zależnością i że jest okropne, ponieważ "jesteś od niego zależny" (próbowałem wyjaśnić jakość wzmocnienia, ale po pewnym czasie zrezygnowałem :( Mniejszym powodem, dla którego chciałbym to zrobić, jest to, że chciałbym nauczyć się funkcji …

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.