В моем программном обеспечении C я создал 10 потоков (multi-thread) и пишу сообщения в очереди сообщений. Я также создал еще 1 поток для мониторинга очереди и слива данных с другого конца очереди.
Он работал нормально, но размер сообщения застрял по умолчанию (10).
Я узнал от форума, чтобы увеличить размер mqueue, запустив «echo number>/proc/sys/fs/mqueue / msg_max», где я поставил «number» как 100 в Linux (Ubuntu).
Однако после этого изменения, когда я снова выполняю свое программное обеспечение, я не могу создать (pthread_create) более 4 потоков. Другие 7 потоков ошибки создания отчета. Все было в порядке, прежде чем кроме очереди было слишком мало.
Пожалуйста, могу я спросить, как я могу восстановить значение по умолчанию msg_max, чтобы я мог запустить программное обеспечение снова?
Также есть ли другой способ увеличить размер mqueue?
Большое спасибо.
Овации,
Дженис
Мы попробовали 10 > /proc/sys/fs/mqueue / msg_max, и все снова хорошо. — Дженис Мэн