summaryrefslogtreecommitdiff
path: root/src/output/MultipleOutputs.cxx
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2016-12-14 08:15:33 +0100
committerMax Kellermann <max@musicpd.org>2016-12-14 08:35:07 +0100
commit6425b4f9f56f5b98124cf7b006ede4ec8d86a567 (patch)
tree624ae4111362d511ca8410eaa5703fdb7558403d /src/output/MultipleOutputs.cxx
parentfb907f5f7613e83c0db2061cc73c9b2918704872 (diff)
output/MultipleOutputs: parallelize AudioOutput destruction
Reduce latency by stopping all AudioOutputs asynchronously.
Diffstat (limited to 'src/output/MultipleOutputs.cxx')
-rw-r--r--src/output/MultipleOutputs.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/output/MultipleOutputs.cxx b/src/output/MultipleOutputs.cxx
index d5b6340d0..6f846faaa 100644
--- a/src/output/MultipleOutputs.cxx
+++ b/src/output/MultipleOutputs.cxx
@@ -43,8 +43,11 @@ MultipleOutputs::MultipleOutputs(MixerListener &_mixer_listener)
MultipleOutputs::~MultipleOutputs()
{
+ /* parallel destruction */
for (auto i : outputs)
- i->Finish();
+ i->BeginDestroy();
+ for (auto i : outputs)
+ i->FinishDestroy();
}
static AudioOutput *