multithreading_support.3coin3 - Man Page

Name

multithreading_support ā€” Multithreading Support in Coin

The support in Coin for using multiple threads in application programs and the Coin library itself, consists of two main features:

The classes in question are SbThread, SbMutex, SbStorage, SbBarrier, SbCondVar, SbFifo, SbThreadAutoLock, SbRWMutex, and SbTypedStorage. See their respective documentation for the detailed information.

The classes fully hides the system-specific implementation, which is either done on top of native Win32 (if on Microsoft Windows), or over POSIX threads (on UNIX and UNIX-like systems).

Thread-safe render traversals are off by default, because there is a small overhead involved which would make rendering (very) slightly slower on single-threaded invocations.

To get a Coin library built with thread-safe rendering, one must actively re-configure Coin and build a special, local version. For configure-based builds (UNIX and UNIX-like systems, or with Cygwin on Microsoft Windows) this is done with the option '--enable-threadsafe' to Autoconf configure. For how to change the configuration and re-build with Visual Studio, get in touch with us at 'coin-support@coin3d.org'.

There are some restrictions and other issues which it is important to be aware of:

We are aware of at least issues with Qt (and thereby SoQt), where you should not modify the scene graph in any way in a thread separate from the main Qt thread. This because it will trigger operations where Qt is not thread-safe.

Since

Coin 2.0

Referenced By

The man page multithreading_support.3coin2(3) is an alias of multithreading_support.3coin3(3).

Version 3.1.3 Coin