Size: a a a

2020 June 17

CD

Constantine Drozdov in pro.cxx
а вот optional = nullptr не скомпилируется, и очень интересно, ждем ли мы тут именно результата этого перемещения optional
источник

A

Alex Ф-ф-фэils!🌠︙... in pro.cxx
Constantine Drozdov
а вот optional = nullptr не скомпилируется, и очень интересно, ждем ли мы тут именно результата этого перемещения optional
Нуллопт
источник

AS

Anatoly Shirokov in pro.cxx
Я читаю по диагонали этот диалог. Либо Гранина вызывать, либо граненый стакан опрокинуть.
источник

A

Alex Ф-ф-фэils!🌠︙... in pro.cxx
либо предложить реактивный подход
источник

CD

Constantine Drozdov in pro.cxx
Anatoly Shirokov
Я читаю по диагонали этот диалог. Либо Гранина вызывать, либо граненый стакан опрокинуть.
Почему либо, а не или? :))
источник

CD

Constantine Drozdov in pro.cxx
Alex Ф-ф-фэils!🌠︙
либо предложить реактивный подход
Это нужно под капотом там
источник

CD

Constantine Drozdov in pro.cxx
Я, кстати, так и не избавился от грязного хака с reactive<int> idle_counter() в том же самом контроллере :)
источник

CD

Constantine Drozdov in pro.cxx
В трассах так и идёт "вы создали 100 idle counter, остановитесь, глупцы!"
источник

AS

Anatoly Shirokov in pro.cxx
Constantine Drozdov
Почему либо, а не или? :))
Ибо либо
источник

ГH

Гласси Hudobin in pro.cxx
Alex
Концептуально я понимаю, но вот таких задач либо ни разу не видел, либо не распознал.
Тут могут сидеть неопытные программисты, которых такое предложение испугает. Не надо тут FUD разводить. libcurl знаем? В отдельный поток скачивание ресурса хотим вынести? Значить use-кейс идеальный для future/promise.
источник

AD

Andrey Davydov in pro.cxx
Очень интересный текст от Страуструпа: "Thriving in a Crowded and Changing World: C++ 2006–2020" (https://dl.acm.org/doi/pdf/10.1145/3386320).
Все 167 страниц я не прочитал, но то что мне было интересно (и, подозреваю, может быть интересно многим):
* эволюция концептов: C++0x Concepts (Indiana vs Texas group) -> Concepts Lite (Concept TS) -> C++20 Concepts;
* история стандартизации модулей;
* Gor-routines vs альтернативные предложения (единый интерфейс для stackless/stackful корутин, Core Coroutines / идея болгарских товарищей);
* битва за контракты глазами Страуструпа.
источник

ПК

Побитый Кирпич... in pro.cxx
Гласси Hudobin
Тут могут сидеть неопытные программисты, которых такое предложение испугает. Не надо тут FUD разводить. libcurl знаем? В отдельный поток скачивание ресурса хотим вынести? Значить use-кейс идеальный для future/promise.
Идеальный, если мы не боимся блокировать поток, который хочет получить результат, потому что future умеют адекватно из коробки только ждать. В gui потоке уже не вызовешь
источник

A

Alex in pro.cxx
Если уверен, что работа уже должна была завершиться, и выставлен вменяемый таймаут, то можно и из гуи
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
Если уверен, что работа уже должна была завершиться, и выставлен вменяемый таймаут, то можно и из гуи
С IO запросами ты никогда не уверен
источник

A

Alex in pro.cxx
для этого нужен таймаут
источник

OS

Oleksandr Senkovych in pro.cxx
Можно еще сделать мультиплексор для бедных через future.wait_for(std::chrono::seconds(0));
источник

OS

Oleksandr Senkovych in pro.cxx
ну и еще есть польза в пробрасывании исключений
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
для этого нужен таймаут
Таймаут это костыль в данном случае, есть операции, которые не войдут в таймаут если медленная сеть (скачивание файла в телеграмме), надо фейлить скачку, если не скачается за N секунд?
источник

ПК

Побитый Кирпич... in pro.cxx
Ну и смысл именно в блокировании гуи потока, чего не должно быть ни в коем случае, хоть есть таймаут, хоть его нет. Future в этом смысле неюзабельны пока
источник

A

Alex in pro.cxx
Считаю, что заблокировать на 50-100 мс не зазорно, если альтернатива - наворачивание сложной и потенциально хрупкой синхронизации. Но в целом да, контраргументы разумные.
источник