Size: a a a

2021 February 26

A

Alex in pro.cxx
а ошибка 404?
источник

A

Alex in pro.cxx
или при пережатии не хватило памяти?
источник

CD

Constantine Drozdov in pro.cxx
а если не логические, то передача исключений по схеме Result
источник

A

Alex in pro.cxx
или интернет отвалился на полпути?
источник

A

Alex in pro.cxx
т. е. возвращается штатным образом объект, но в нём описана возникшая ошибка?
источник

CD

Constantine Drozdov in pro.cxx
разумеется, по-другому исключения нельзя передавать через потоки
источник

A

Alex in pro.cxx
ну то есть ваши исключения даже не совсем исключения?)
источник

A

Alex in pro.cxx
или вы им сразу делаете throw уже в UI потоке?
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
ну то есть ваши исключения даже не совсем исключения?)
Исключение выбрасывается при попытке достать результат из future когда там ошибка
источник

CD

Constantine Drozdov in pro.cxx
Alex
или вы им сразу делаете throw уже в UI потоке?
throw будет если unwrap, это стандартная схема
источник

A

Alex in pro.cxx
можно через exception_ptr переложить и перебросить в другом потоке
источник

A

Alex in pro.cxx
Побитый Кирпич
Исключение выбрасывается при попытке достать результат из future когда там ошибка
понял
источник

CD

Constantine Drozdov in pro.cxx
Alex
можно через exception_ptr переложить и перебросить в другом потоке
ну посмотрите folly, там специфический variant, в котором может быть и exception_ptr, хотя это нежелательно
источник

A

Alex in pro.cxx
Концепция интересная, спасибо за объяснение
источник

m

magras in pro.cxx
Constantine Drozdov
Самый большой вопрос: вы узнали, что результат вызова функции сохранён в переменную для дальнейшей обработки не пойми где. Если бы это был корутиновый код, у вас был бы шанс, что вы отловите цепочки обработки конкретных данных отладчиком, потому что они идут подряд.
м... Расковыривать бэктрейс из корутин, если были реальные саспенды (то есть управление реально идет через continuation, а не по короткому пути) - это боль. При этом эту боль еще и не просто решить. Для условного std::task (который на самом деле std::lazy) в дебагер, наверное, добавят поддержку, а вот с кастомными корутинами видимо придется еще и в дебаггер добавлять свою автоматизацию.
источник

ПК

Побитый Кирпич... in pro.cxx
magras
м... Расковыривать бэктрейс из корутин, если были реальные саспенды (то есть управление реально идет через continuation, а не по короткому пути) - это боль. При этом эту боль еще и не просто решить. Для условного std::task (который на самом деле std::lazy) в дебагер, наверное, добавят поддержку, а вот с кастомными корутинами видимо придется еще и в дебаггер добавлять свою автоматизацию.
Ты имеешь ввиду чтоб стектрейс в корутинах выглядел как-будто это синхронный код, а не через шедулер?
источник

m

magras in pro.cxx
Побитый Кирпич
Ты имеешь ввиду чтоб стектрейс в корутинах выглядел как-будто это синхронный код, а не через шедулер?
Да.
источник

CD

Constantine Drozdov in pro.cxx
magras
м... Расковыривать бэктрейс из корутин, если были реальные саспенды (то есть управление реально идет через continuation, а не по короткому пути) - это боль. При этом эту боль еще и не просто решить. Для условного std::task (который на самом деле std::lazy) в дебагер, наверное, добавят поддержку, а вот с кастомными корутинами видимо придется еще и в дебаггер добавлять свою автоматизацию.
ну там вроде бы структурный размен "проще писать" на "хуже отлаживать"
источник

AU

Abu Umar in pro.cxx
Может кто в теме https://github.com/Manu343726/ctti заброшен? Если да, то какая альтернатива?
источник

D

Danya in pro.cxx
Abu Umar
Может кто в теме https://github.com/Manu343726/ctti заброшен? Если да, то какая альтернатива?
Судя по коммитам — заброшен
источник