|
97 / 0 / 1
Регистрация: 01.07.2018
Сообщений: 25
|
|
Синхронизация потоков с time_point28.05.2020, 12:08. Показов 3898. Ответов 41
Метки нет (Все метки)
В программе запускается два потока, первым-поток, ожидающий инструкций от пользователя( выводит строку, ожидает ввод, запускает соответствующую функцию-либо изменяет общий контейнер, либо выводит из него данные), вторым запускается поток, выводящий точно по time_point данные из общего контейнера. Как синхронизировать потоки? Приложение пока консольное, проблема в том, что второй поток должен всегда точно по времени выводить сообщения и если первый считает информацию слишком поздно( не успеет выполнить вывод до очередной временной точки), то вывод со второго потока не успеет сработать вовремя. Думаю использовать timed_mutex, блокировать второй поток точно по времени, а в первом использовать try_lock_until( time_point-chrono::milliseconds(500). Есть ли более оптимальный вариант?
0
|
|
| 28.05.2020, 12:08 | |
|
Ответы с готовыми решениями:
41
Как привести тип time_point<std::filesystem::__file_clock, [.]>к типу const time_point<std::chrono::_V2::system_clock Синхронизация потоков
|
|
97 / 0 / 1
Регистрация: 01.07.2018
Сообщений: 25
|
||||||
| 03.06.2020, 16:06 [ТС] | ||||||
|
Вот что получилось. В f правильная синхронизация? Она не должна ожидать уведомлений, должна вовремя выводить таймпоинты, а вот второй поток как раз должен под нее подстраиваться и не перебивать.
0
|
||||||
|
Комп_Оратор)
|
|
| 03.06.2020, 16:33 | |
|
Dgamilya, не могу назвать вас разбойником. Потому, что вы разбойница. имхо.
Вызов это то что нужно показать. Где main, где создание потоков, где всё? И ещё. Для начала, уберите сложные задачи и логику. Попробуйте две функции которые печатают на экран "hru" и "kuku". Пока повангую: вы забыли передать параметры обёрнутые в std::ref, наверное?
0
|
|
| 03.06.2020, 16:33 | |
|
Синхронизация потоков в c++
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|