Для тех, кто ищет пример мьютекса с шортексом:

ичок в многопоточности и пытался понять, как работают мьютексы. Много гуглил иЯ нашел достойный учебник, но это все еще оставляло некоторые сомнения в том, как это работает, потому что я создал свою собственную программу, в которой блокировка не работала.

Один абсолютно неинтуитивный синтаксис мьютексаpthread_mutex_lock( &mutex1 );где это выглядит так, как будто мьютекс заблокирован, когда то, что я действительно хочу заблокировать, это какая-то другая переменная. Означает ли этот синтаксис, что блокировка мьютекса блокирует область кода, пока мьютекс не будет разблокирован? Тогда откуда потоки узнают, что регион заблокирован? [ОБНОВЛЕНИЕ: Темы знают, что регион заблокирован, Ограждение памяти ]. И разве такое явление не должно называться критическим разделом? [ОБНОВЛЕНИЕ: Объекты критических разделов доступны только в Windows, где объекты быстрее мьютексов и видны только потоку, который их реализует. В противном случае критический раздел относится только к области кода, защищенной мьютексом.]

Короче, не могли бы вы помочь с максимально простым мьютексом?пример программы и самый простой из возможныхобъяснение по логике как это работает? Я уверен, что это поможетмного других новичков.

Ответы на вопрос(8)

Ваш ответ на вопрос