main (), имеющий доступ только для чтения к измененным значениям внутри непрерывно работающих потоков - C ++ - PullRequest
0 голосов
/ 03 мая 2018

Я создаю несколько pthreads внутри функции main () моей программы на C ++. После создания потоков каждый из них отвечает за создание UDP-сокета и прослушивание определенного порта. На основании данных, поступающих на каждый порт, потоки модифицируют глобальные переменные, которые одновременно будут считываться главной функцией внутри цикла. Вопрос в том, могу ли я использовать мьютекс, чтобы выполнить ту же процедуру внутри основной функции, или основная функция сама потребляет много ресурсов, так что лучший способ - сделать другой поток ответственным за чтение измененных данных? (и, конечно, в этой новой теме я могу использовать мьютекс) Заранее спасибо.

1 Ответ

0 голосов
/ 03 мая 2018

Нет существенной разницы между "основным" потоком и другими потоками, которые он создает. После создания дополнительных потоков все они имеют одинаковые права доступа и сопоставления памяти.

...