openmw-tes3coop/apps/openmw
scrawl 530fb61ad0 Use OpenThreads instead of boost thread
This should allow OpenMW to work better with git versions of openscenegraph. OSG dev version 3.5.5 added the setting of thread affinity for the main thread. The problem is that in the boost/standard threading libraries, the affinity of a thread is inherited by any further threads launched from that thread, leading to these threads always running on the same core as the main thread unless you tell them not to.

With OpenThreads, the default affinity of a thread is none, no matter what parent thread it was launched from.

So, when using custom threading with OSG 3.6+, we have these options:
1. explicitely tell OSG to *not* set the thread affinity
or 2. explicitely set the thread affinity of additional threads created (possible with boost, but not possible with std::thread)
or 3. use OpenThreads
or 4. accept the suboptimal performance of non-OSG threads (in OpenMW's case the sound streaming & video threads) running on the same core as the main thread

This patch opts for 3.)

Reference: http://forum.openscenegraph.org/viewtopic.php?t=16158
2016-10-10 18:23:06 +02:00
..
mwbase Coverity fixes 2016-10-05 23:32:26 +09:00
mwclass Correction to display of 0-weight tooltips 2016-10-04 23:02:45 +09:00
mwdialogue Don't let disposition at end of dialogue be below 0 (Fixes #3584) 2016-10-10 02:20:24 +09:00
mwgui Use 'default icon' for items with no icon specified 2016-10-08 16:05:20 +02:00
mwinput Fix the enemy nearby check (Bug #3423) 2016-06-07 01:55:34 +02:00
mwmechanics Merge pull request #1094 from Allofich/alchemy 2016-10-06 19:02:24 +02:00
mwphysics Improve performance by skipping update if transform is unchanged 2016-08-16 17:50:59 +02:00
mwrender Improvements to ignored light list setting 2016-10-08 23:59:28 +02:00
mwscript add missing item when executing the Equip instruction 2016-09-06 16:33:26 +02:00
mwsound Use OpenThreads instead of boost thread 2016-10-10 18:23:06 +02:00
mwstate Save scripted animation state (Fixes #1931, #2150, #3393) 2016-08-03 03:52:35 +02:00
mwworld Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 2016-10-08 23:17:12 +02:00
android_commandLine.cpp Fix tab indentations in apps/ and components/ 2015-09-16 20:45:37 +02:00
android_commandLine.h Remove empty line at the beginning of files 2015-08-18 23:06:12 +02:00
android_main.c enable opengl es1 2015-12-02 22:40:04 +03:00
CMakeLists.txt Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 2016-10-08 23:17:12 +02:00
crashcatcher.cpp Mainly making compilable under OpenBSD. 2016-08-06 19:00:27 +01:00
doc.hpp doc.hpp fix 2015-06-04 01:30:16 +02:00
engine.cpp Vanilla-compatible activate / onActivate (Fixes #1629) 2016-02-26 13:08:35 +01:00
engine.hpp Refactor: InputManager no longer depends on Engine 2015-11-14 03:01:24 +01:00
main.cpp Relocate escape-related code to new files escape.hpp and escape.cpp. 2016-07-27 00:58:31 +01:00