Не удается создать несколько потоков после увеличения размера сообщения mqueue

В моем программном обеспечении 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?

Большое спасибо.

Овации,

Дженис

1 ответ

  1. Мы попробовали 10 > /proc/sys/fs/mqueue / msg_max, и все снова хорошо. — Дженис Мэн