Boost :: Thread :: try_join_for. Бросить неверный аргумент [generic: 22] После обновления повышения с 1,48 до 1,88C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Boost :: Thread :: try_join_for. Бросить неверный аргумент [generic: 22] После обновления повышения с 1,48 до 1,88

Сообщение Anonymous »

Я использую встроенный Linux (Yocto Project) и недавно обновлен до последней версии Boost.
Используемый компилятор-это Arm-poky-linux-gnueabi-g ++ (gcc) 13.3.0 < /p>
Проблема, с которой я столкнулся, может быть воспроизведена по этому маленькому кодовому чистому, что я предполагаю, что является допустимым кодом. < /p>

boost::thread t([](){ std::this_thread::sleep_for(std::chrono::seconds(5)); });
try
{
std::cout https://github.com/boostorg/thread/blob ... riable.hpp
и я уверен, что исключение возникает в строке 139, что означает, что этот вызов не выполняет:
cond_res=posix::pthread_cond_timedwait(&cond,the_mutex,&timeout.getTs());
[/code]
Я предполагаю, что cond и the_mutex правильно инициализирован, что означает, что
timeout.getts () является проблемой.
Использование строки последнее вывод, прежде чем исключение поймает

.

Код: Выделить всё

clock_gettime64(CLOCK_MONOTONIC, {tv_sec=66290, tv_nsec=902644605}) = 0
Я попробовал небольшой пример, используя pthread_cond_timedwait, где я не использую BOOST, но все функционируют из STD, который работает нормально.
Мой вывод заключается>

Подробнее здесь: https://stackoverflow.com/questions/796 ... er-upgradi
Ответить

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

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

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

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

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