Как перебросок исключение, не теряя стопку первоначального вызова?

Злоупотребление правилами, тем же результатом: (x для x в 'Word для разделения')

На самом деле итератор, не список. Но вероятно, что Вы не будете действительно заботиться.

6
задан 12 December 2009 в 16:28
поделиться

2 ответа

Вы можете развернуть стек в блоке catch и сохранить его как часть исключения, которое вы повторно генерируете. Раскрутка стека в C ++ немного сложна, но вы можете в качестве примера взглянуть на код сборщика аварийных дампов, который поставляется с WxWidgets .

2
ответ дан 17 December 2019 в 20:32
поделиться

Вопрос в том, зачем вам передавать стек в "принимающий" поток.

Я предполагаю, что вам нужен стек для того, чтобы сообщить об этом в какой-то журнал ошибок. Вы можете пройтись по стеку в захватывающем потоке или создать мини-дамп или любую другую информацию об ошибке, которую хотите собрать, а затем просто передать копию исключения (если возможно, остерегайтесь разрезания) принимающему потоку.

0
ответ дан 17 December 2019 в 20:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: