tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
tracktion_NodePlayerThreadPools.h
Go to the documentation of this file.
1 /*
2 ,--. ,--. ,--. ,--.
3 ,-' '-.,--.--.,--,--.,---.| |,-.,-' '-.`--' ,---. ,--,--, Copyright 2024
4 '-. .-'| .--' ,-. | .--'| /'-. .-',--.| .-. || \ Tracktion Software
5 | | | | \ '-' \ `--.| \ \ | | | |' '-' '| || | Corporation
6 `---' `--' `--`--'`---'`--'`--' `---' `--' `---' `--''--' www.tracktion.com
7
8 Tracktion Engine uses a GPL/commercial licence - see LICENCE.md for details.
9*/
10
11#pragma once
12
13
14namespace tracktion { inline namespace graph
15{
16
17//==============================================================================
32
34LockFreeMultiThreadedNodePlayer::ThreadPoolCreator getPoolCreatorFunction (ThreadPoolStrategy);
35
36}}
ThreadPoolStrategy
Available strategies for thread pools.
@ conditionVariable
Uses CVs to pause threads.
@ lightweightSemaphore
Uses a semaphore/spin mechanism to suspend threads.
@ lightweightSemHybrid
Uses a combination of semaphores/spin and yields to suspend threads.
@ realTime
Uses pause, yield and sleeps to suspend threads.
@ semaphore
Uses a semaphore to suspend threads.
@ hybrid
Uses a combination of the above, avoiding CVs on the audio thread.