Mutex („wzajemne wykluczanie”) to mechanizm zapewniający integralność, gdy te same dane lub zasoby są uzyskiwane (w szczególności zmieniane) jednocześnie z kilku wątków.
Mam aplikację wielowątkową, która musi często czytać niektóre dane, a czasami te dane są aktualizowane. W tej chwili mutex zapewnia bezpieczny dostęp do tych danych, ale jest drogi, ponieważ chciałbym, aby wiele wątków mogło czytać jednocześnie i blokować je tylko wtedy, gdy potrzebna jest aktualizacja (wątek aktualizacji może czekać na …
Czy istnieje obiekt Mutex w Javie lub sposób na jego utworzenie? Pytam, ponieważ obiekt Semaphore zainicjowany z 1 zezwoleniem mi nie pomaga. Pomyśl o tym przypadku: try { semaphore.acquire(); //do stuff semaphore.release(); } catch (Exception e) { semaphore.release(); } jeśli wyjątek wystąpi przy pierwszym pobraniu, zwolnienie w bloku catch zwiększy …
Widziałem ten link: Implementowanie wzajemnego wykluczania w JavaScript . Z drugiej strony przeczytałem, że w javascript nie ma wątków, ale co to dokładnie oznacza? Kiedy występują zdarzenia, gdzie w kodzie mogą one przerwać? A jeśli w JS nie ma wątków, czy muszę używać muteksów w JS, czy nie? Konkretnie zastanawiam …
Czy jest jakaś różnica między pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; Lub pthread_mutex_t lock; pthread_mutex_init ( &lock, NULL); Czy jestem wystarczająco bezpieczny, jeśli używam tylko pierwszej metody? UWAGA: Moje pytanie dotyczy głównie bardzo małych programów, w których co najwyżej to, co zrobię, to podłączenie kilku klientów do serwera i rozwiązywanie ich zapytań …
Z założenia std::mutexnie można go przenosić ani kopiować. Oznacza to, że klasa Azawierająca muteks nie otrzyma domyślnego konstruktora przenoszenia. Jak uczynić ten typ Aruchomym w sposób bezpieczny dla wątków?
Czytałem gdzieś, że powinniśmy zablokować muteks przed wywołaniem pthread_cond_signal i odblokować muteks po wywołaniu go: Funkcja pthread_cond_signal () służy do sygnalizowania (lub wybudzania) innego wątku, który oczekuje na zmienną warunku. Powinien zostać wywołany po zablokowaniu muteksu i musi odblokować muteks, aby procedura pthread_cond_wait () została zakończona. Moje pytanie brzmi: czy …
Kłóciłem się z kolegą na temat lock_guard, a on zaproponował, że lock_guard jest prawdopodobnie wolniejszy niż mutex :: lock () / mutex :: unlock () ze względu na koszt utworzenia i ujednolicenia klasy lock_guard. Potem stworzyłem ten prosty test i, co zaskakujące, wersja z lock_guard jest prawie dwa razy szybsza …
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.