Вопросы с тегом «mutex»

Мьютекс («взаимное исключение») - это механизм, обеспечивающий целостность, когда к одним и тем же данным или ресурсу обращаются (в частности, изменяются) одновременно из нескольких потоков.

6
Пример повышения shared_mutex (несколько чтений / одна запись)?
У меня есть многопоточное приложение, которое должно часто читать некоторые данные, и иногда эти данные обновляются. Прямо сейчас мьютекс сохраняет доступ к этим данным безопасным, но это дорого, потому что я хотел бы, чтобы несколько потоков могли читать одновременно, и блокировать их только тогда, когда требуется обновление (поток обновления может …

8
Есть ли мьютекс в Java?
Есть ли объект Mutex в Java или способ его создать? Я спрашиваю, потому что объект Semaphore, инициализированный с 1 разрешением, мне не помогает. Подумайте об этом случае: try { semaphore.acquire(); //do stuff semaphore.release(); } catch (Exception e) { semaphore.release(); } если исключение происходит при первом запросе, освобождение в блоке catch …



7
Нужны ли мьютексы в javascript?
Я видел эту ссылку: Реализация взаимного исключения в JavaScript . С другой стороны, я читал, что в javascript нет потоков, но что именно это означает? Когда происходят события, где в коде они могут прерываться? А если в JS нет потоков, нужно ли использовать в JS мьютексы или нет? В частности, …

4
PTHREAD_MUTEX_INITIALIZER против pthread_mutex_init (& мьютекс, параметр)
Есть ли разница между pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; Или pthread_mutex_t lock; pthread_mutex_init ( &lock, NULL); Достаточно ли я в безопасности, если использую только первый метод? ПРИМЕЧАНИЕ. Мой вопрос в основном относится к очень маленьким программам, где самое большее, что я буду делать, - это подключать несколько клиентов к серверу и …
91 c  ubuntu  pthreads  mutex 

5
Как мне работать с мьютексами в подвижных типах в C ++?
По дизайну std::mutexне подлежит перемещению или копированию. Это означает, что класс, Aсодержащий мьютекс, не получит конструктор перемещения по умолчанию. Как сделать этот тип Aперемещаемым потокобезопасным способом?

3
Вызов pthread_cond_signal без блокировки мьютекса
Я где-то читал, что мы должны заблокировать мьютекс перед вызовом pthread_cond_signal и разблокировать мьютекс после его вызова: Подпрограмма pthread_cond_signal () используется для сигнализации (или пробуждения) другого потока, который ожидает переменной условия. Он должен вызываться после того, как мьютекс заблокирован, и должен разблокировать мьютекс, чтобы процедура pthread_cond_wait () завершилась. Мой вопрос: …

1
Как std :: lock_guard может быть быстрее, чем std :: mutex :: lock ()?
Я спорил с коллегой о lock_guard, и он предположил, что lock_guard, вероятно, медленнее, чем mutex :: lock () / mutex :: unlock () из-за стоимости создания и удаления класса lock_guard. Затем я создал этот простой тест, и, что удивительно, версия с lock_guard почти в два раза быстрее, чем версия с …
9 c++  mutex 
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.