$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Victor A. Wagner, Jr. (vawjr_at_[hidden])
Date: 2002-10-04 11:16:18
At Friday 2002/09/27 06:59, you wrote:
>< apropos "synchronized" -- i.e. multithreading ;-) >
>
>David Abrahams wrote:
>[...]
> >     {
> >         vector1.push_back(e1);
> >         try {
> >             vector2.push_back(e2):
> >         }
> >         catch(...) {
> >             vector1.pop_back();
> >             throw;
> >         }
> >     }
> >
> > And now you have not only the basic, but the strong guarantee (unless...
>
>unless the entire thread running vector2.push_back(e2) gets >>canceled<<
>hitting some cancellation point or async-cancel region... on "some"
>C/*C++* implementation that DOESN'T invoke catch(...) handlers on thread
>cancellation (or exit)... and this IS "industry practice" (AIX, Solaris,
>pthreads-win32/non-VCE, probably z/OS, etc.), nowadays, BTW. ;-) ;-)
which, of course, means you can never do exception safe things in such an os
>regards,
>alexander.
>
>
>_______________________________________________
>Unsubscribe & other changes: http://listarchives.boost.org/mailman/listinfo.cgi/boost
Victor A. Wagner Jr.      http://rudbek.com
PGP RSA fingerprint = 4D20 EBF6 0101 B069 3817 8DBF C846 E47A
PGP D-H fingerprint = 98BC 65E3 1A19 43EC 3908 65B9 F755 E6F4 63BB 9D93
The five most dangerous words in the English language:
               "There oughta be a law"