]> https://gitweb.dealii.org/ - dealii-svn.git/commit
Address the important problem that previously, whenever the last Threads::Thread...
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 23 Jan 2009 01:08:33 +0000 (01:08 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 23 Jan 2009 01:08:33 +0000 (01:08 +0000)
commit43e474d85baaa536e01f7fbaea845868ede8fc87
tree79e7ef871907933f3cedd8a1b96a4ed11b7aac17
parent9b358c02b07444d4d4d2de28270baa5ef3b4a742
Address the important problem that previously, whenever the last Threads::Thread<> object went out of scope, the location where a thread would deposit its return value was in deleted memory and thus potentially very bad. We now handle this by making sure that the thread itself keeps a lock on the destruction of the object in which the return_value is located, by keeping another shared_ptr to it, and only releases the lock whenever the return value has been deposited.

git-svn-id: https://svn.dealii.org/trunk@18272 0785d39b-7218-0410-832d-ea1e28bc413d
deal.II/base/include/base/std_cxx0x/shared_ptr.h
deal.II/base/include/base/thread_management.h

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.