Ho trovato in vari punti come una promessa deve essere utilizzata con riferimento a copy_exception
, ma non riesco a trovarla nell'attuale FDIS. C'è un modo alternativo su come usare set_exception()
da quei blog?Come ottenere l'argomento promessa :: set_exception (x)?
Per esempio here
void asyncFun(promise<int> intPromise)
{
int result;
try {
// calculate the result
intPromise.set_value(result);
} catch (MyException e) {
intPromise.set_exception(std::copy_exception(e)); // <- copy
}
}
trovo std::current_exception()
here.
catch(...)
{
p.set_exception(std::current_exception());
}
Quindi le mie domande:
- importante usare sempre
current_exception()
, anche quando io non prendo "...
"? - Oppure c'è un nuovo nome per
copy_exception
?