Pytania otagowane jako multithreading

Pytania dotyczące wielowątkowości, w tym kwestie dotyczące techniki, struktury i bezpieczeństwa.

1
Rysowanie interakcji wątku
Chciałbym narysować interakcję wątków (długopisem i ołówkiem) w notacji UML (podobnej). Nie nalegam na UML, wszystko, co czytelnik powinien zrobić. Zacząłem od schematów sekwencji, ale nie sądzę, że jest to najlepszy sposób, aby to zrobić. Przez cały czas pojawiały się „inicjatory akcji” spoza ekranu, które jakby łamały pomysł SSD. Odziedziczyłem …

8
Czego nauczyłeś się z projektu, który prawie / właściwie zawiódł z powodu złej wielowątkowości? [Zamknięte]
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 6 lat temu . Czego nauczyłeś się z projektu, który prawie / właściwie zawiódł z powodu złej wielowątkowości? Czasami …

2
Ilu tworzy wątki do użycia?
Kiedy (ponownie) buduję duże systemy na komputerze stacjonarnym / laptopie, mówię, makeaby użyć więcej niż jednego wątku, aby przyspieszyć kompilację: $ make -j$[ $K * $C ] Gdzie $Cma wskazać liczbę rdzeni (które możemy założyć, aby być liczbą z jednej cyfry) maszyna ma, natomiast $Kjest czymś różnić od 2celu 4, …


2
Dlaczego programiści definiują modele programowania, aby zastąpić C / POSIX dla równoległości?
Dostawcy nowych architektur komputerowych regularnie próbują wprowadzać nowe modele programowania, np. Ostatnio CUDA / OpenCL dla GPGPU, i zastępują C / POSIX jako interfejs sterowania równoległością platformy. (Poss & Koening, AM3: Ku sprzętowemu akceleratorowi Unix dla wielu rdzeni, 2015) Dlaczego projektanci architektury starają się projektować nowe modele programowania, aby wyprzeć …

1
Kolejka wiadomości dla RTOS dla mikrokontrolerów
Obecnie piszę RTOS dla mikrokontrolerów. Wszystko napisano w C ++ 11 - jeśli ktoś jest zainteresowany, a link do repozytorium znajduje się na dole. Obecnie piszę klasę, która jest prostą kolejką danych do przekazywania obiektów między wątkami (lub między programami obsługi przerwań a wątkami lub programami obsługi przerwań i innymi …


1
Koncepcyjnie, co to znaczy, kiedy mówi się, że każdy wątek ma swój własny stos?
Czytałem Java Concurrency in Practice autorstwa Briana Goetza i wewnątrz sekcji Stack Coninement wspomniano, że każdy wątek otrzymuje swój własny stos, a więc zmienne lokalne są wewnętrznie ograniczone do wątku wykonującego; istnieją na stosie wątków wykonawczych, który nie jest dostępny dla innych wątków. Co on oznacza, że ​​każdy wątek ma …

3
Szukasz rozproszonego wzoru blokowania
Muszę wymyślić niestandardowy mechanizm \ wzorca blokowania obiektów rekurencyjnych dla systemu rozproszonego w języku C #. Zasadniczo mam system z wieloma węzłami. Każdy węzeł ma wyłączne uprawnienia do zapisu dla n -liczba elementów stanu. Ten sam stan jest również dostępny w formie tylko do odczytu w co najmniej jednym innym …

6
Jeśli korzystam z blokad, czy mój algorytm może nadal być bez blokady?
Powszechną definicją bez blokady jest to, że co najmniej jeden proces robi postęp. 1 Jeśli mam prostą strukturę danych, taką jak kolejka, chronioną przez blokadę, wtedy jeden proces może zawsze robić postęp, ponieważ jeden proces może uzyskać blokadę, zrobić to, co chce i zwolnić. Czy spełnia zatem definicję bez blokady? …

6
Czy wątki używają pamięci wirtualnej czy pamięci rzeczywistej?
Próbowałem zoptymalizować mój serwer Linux do obsługi 10 000 wątków na proces, podczas gdy obecnie robi to tylko 382. Zgodnie z tym artykułem stosowana jest następująca formuła, aby znaleźć całkowitą liczbę możliwych wątków: number of threads = total virtual memory / (stack size*1024*1024) Oznacza to, że wątki przechowują wszystkie swoje …

6
Dlaczego wątki nazywane są wątkami?
Rozumiem, że proces to jednostka własności zasobów i instrukcje wykonywalne. Wątki pozwalają procesowi współużytkować zasoby z wieloma wykonaniami, a systemowi operacyjnemu łatwiej jest zaplanować wątki z powodu całego obciążenia związanego z całymi procesami. Ale dlaczego nazwa wątku ? Czy ma jakieś odniesienie do łańcucha lub przeplatania wykonania? Mimo to moim …

1
Wielu blokujących VS pojedynczych nieblokujących pracowników
Załóżmy, że istnieje serwer HTTP, który akceptuje połączenia, a następnie w jakiś sposób czeka na pełne przesłanie nagłówków. Zastanawiam się, jaki jest najczęstszy sposób jego wdrożenia, a jakie są pozostałe zalety i wady. Mogę tylko myśleć o tych: Wielu pracowników blokujących jest dobrych, ponieważ: Jest bardziej responsywny. Łatwiejsze wprowadzanie nowych …

3
Bez blokady IPC w systemie Linux dla procesorów wielordzeniowych
Próbuję znaleźć sposób na napisanie aplikacji bez blokady IPC na Linuksie, w C, z procesorami wielordzeniowymi. Załóżmy, że mam proces 1 i proces 2, które zapisują w FIFO lub w pamięci współdzielonej. Następnie proces 3 i proces 4 będą czytać z tej pamięci współdzielonej lub FIFO. Czy jest to możliwe …

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.