From 16be009ae00e5716eea659b7f2efb8927ee7c38f Mon Sep 17 00:00:00 2001 From: bangerth Date: Mon, 29 Nov 2010 20:10:43 +0000 Subject: [PATCH] Fix table of contents; add one more sentence. git-svn-id: https://svn.dealii.org/trunk@22882 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/doc/doxygen/headers/multithreading.h | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/deal.II/doc/doxygen/headers/multithreading.h b/deal.II/doc/doxygen/headers/multithreading.h index 3d65290de0..04108a63e8 100644 --- a/deal.II/doc/doxygen/headers/multithreading.h +++ b/deal.II/doc/doxygen/headers/multithreading.h @@ -57,7 +57,7 @@ *
  • @ref MTSimpleLoops "Abstractions for tasks: Simple loops" *
  • @ref MTComplexLoops "Abstractions for tasks: More complex loops" *
  • @ref MTWorkStream "Abstractions for tasks: Work streams" - *
  • @ref MTTasksSynchronization "" + *
  • @ref MTTaskSynchronization "Tasks and synchronization" *
  • @ref MTThreads "Thread-based parallelism" *
  • @ref MTTaskThreads "Controlling the number of threads used for tasks" * @@ -1048,7 +1048,7 @@ * tutorial programs. * * - * @anchor MTTasksSynchronization + * @anchor MTTaskSynchronization *

    Tasks and synchronization

    * * Tasks are powerful but they do have their limitation: to make @@ -1081,11 +1081,14 @@ * (a mutex) rather than task scheduler resources. The result is a * deadlock. * - * The bottom line is that tasks can not use mutices or condition - * variables to synchronize with other tasks. If synchronization is - * necessary, you need to use threads because the operating system - * makes sure that all threads eventually get to run, independent of - * the total number of threads. + * The bottom line is that tasks can not use mutices or condition variables to + * synchronize with other tasks. If communication between tasks is necessary, + * you need to use threads because the operating system makes sure that all + * threads eventually get to run, independent of the total number of threads. + * Note however that the same is not true if you only use a Thread::Mutex on + * each task separately to protect access to a variable that the tasks may + * write to: this use of mutices is ok; tasks may simply not want to wait for + * another task to do something. * * * @anchor MTThreads -- 2.39.5