Очередь сообщений Linux Posix mq_receive зависает/не возвращается ⇐ Linux
-
Anonymous
Очередь сообщений Linux Posix mq_receive зависает/не возвращается
Моя программа успешно компилируется в исполняемый файл, как и ожидалось. Тем не менее, когда я запускаю один и тот же один и тот же исполняемый файл с идентичными параметрами, иногда он работает и возвращает результат, а иногда он все еще каким-то образом работает, но никогда возвращается.
После того, как я повсюду расставил операторы printf, я выяснил, какая часть программы застряла, и это именно эта часть:
int64_t сообщение[M]; для (;;) { // Проверяем, нет ли больше сообщений для получения mq_getattr(mq, &mqAttrs); if (mqAttrs.mq_curmsgs
Моя программа успешно компилируется в исполняемый файл, как и ожидалось. Тем не менее, когда я запускаю один и тот же один и тот же исполняемый файл с идентичными параметрами, иногда он работает и возвращает результат, а иногда он все еще каким-то образом работает, но никогда возвращается.
После того, как я повсюду расставил операторы printf, я выяснил, какая часть программы застряла, и это именно эта часть:
int64_t сообщение[M]; для (;;) { // Проверяем, нет ли больше сообщений для получения mq_getattr(mq, &mqAttrs); if (mqAttrs.mq_curmsgs
Мобильная версия