|
Boost : |
From: Victor A. Wagner, Jr. (vawjr_at_[hidden])
Date: 2004-02-10 00:42:48
At Monday 2004-02-09 14:19, you wrote:
>Stefan Seefeld <seefeld_at_[hidden]> writes:
>
> > Glen Knowles wrote:
> >> From: David Abrahams [mailto:dave_at_[hidden]]
> >> >> Of course you cannot portably pass all exceptions, but you may be able
> >> >> to pass all the ones that use standard types.
> >> >
> >> >And what if the std library or somebody else throws exceptions
> >> >*derived* from the standard types?
> >> If it is not a recognized corba exception what the ACE TAO does is
> >> eat it with a catch(...) and then throws a corba system exception on
> >> the other side.
> >
> >
> > yes, so all exceptions that are allowed to pass have to be explicitely
> > declared
> > as such. If it is not declared, a special standard exception will be
> > thrown (or may be something equivalent to 'unexpected'). If it is
> > derived from a declared one, it will be sliced.
>
>Is everyone convinced that propagating the exception into the joining
>thread is the right behavior or even semantically sensible?
I consider it equivalent to the asking for the results of a function whose
execution was delayed.
Most people only consider marshalling, dispatching, and results as a
single step in which exceptions clearly make sense. I don't see the big
difference when we split them up into different pieces. I further don't
see a big distinction between the above and beginning a thread and
join()ing it.
>--
>Dave Abrahams
>Boost Consulting
>www.boost-consulting.com
>
>_______________________________________________
>Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr. http://rudbek.com
The five most dangerous words in the English language:
"There oughta be a law"
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk