Pthread в LinuxC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Pthread в Linux

Сообщение Anonymous »

Предположим, я создаю 2 потока, а также создал поток синхронизации.
Поток 1: программа для добавления 2 целых чисел.
Поток 2: программа для вычитания 2 целых чисел.
В многопоточном режиме поток 1 и поток 2 будут
выполняться одновременно.
Предположим, поток 2 блокирует доступ к памяти, поэтому только поток 2 может доступ к общей памяти.
Но до того, как поток 2 добавил целое число 2, процессор выполнил переключение контекста для выполнения потока 1, но выполнение потока 1 было завершено и ему требуется доступ к общей памяти. но поскольку поток 2 блокирует доступ к памяти, поток 1 не может сохранить результат в общей памяти.
Поток 1 может получить доступ к общей памяти только в том случае, если поток 2 разблокирует общую память. доступ к памяти.
Мой вопрос:
Будет ли результат потока 1 помещен во временный буфер, а затем, когда поток 2 разблокирует общую память, данные будут помещены из временного буфера в общую память? буфер?

Подробнее здесь: https://stackoverflow.com/questions/793 ... d-in-linux
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»