Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 July 12

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Есть сисвызов, чтоб отправится спать до пробуждения потока?
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
И потом уже какой кандидат на мьютекс успеет его получить, тот и будет работать
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Вроде да
Но это кажись платформ дефайнед поэтому надо через мьютексы/семафоры/конд вериабл или крит секции
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Или как то ещё
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Cond variable как раз это и даёт
cv.wait();

cv.notify();
cv.notifyAll();
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
понял, кажется
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Мьютексы чутка про другое
Их задача - что б не более одного потока выполняла любую из секций кода, каждая из кода которых, ограничена этим мьютексом

Mut.lock()
...
Mut.unlock();
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
А семафор - что б не более н потоков)
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Крит секции устарели и я сейчас даж не вспомню где их нельзя безболезненно  заменить на что то другое
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Да ну вот задача аля в одном потоке крутится вебсервер, который ложит задачи, а в другом поток, который молотит эти задачи. И вот вопрос, как уведомить вебсервер, что какая-то задача сделана.
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
По правильному
Мьют на запись/чтение очереди
И конд вариабл на оповещение про модификацию
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Тут наверное две очереди в две стороны по мьютексам.
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Ага
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Ну
На каждый поток данных по очереди и по мьютексу
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Хотя иногда можно и одним обойтись
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Кстать ещё атомики заюзать можно
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
Ток я не помню что там в плюсах за апи для них
источник

A

András in IT KPI C/C++ ХВ (не UB)
Art Teatr
Ток я не помню что там в плюсах за апи для них
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Ещё бы пример на атомиках посмотреть
источник

A

András in IT KPI C/C++ ХВ (не UB)
Yevhen Salatskiy
Ещё бы пример на атомиках посмотреть
источник