1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
/* -*- C++ -*-
This file is part of ThreadWeaver.
SPDX-FileCopyrightText: 2005-2013 Mirko Boehm <mirko@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
#include "src/queue.h"
#include "WaitForIdleAndFinished.h"
using namespace ThreadWeaver;
WaitForIdleAndFinished::WaitForIdleAndFinished(Queue *weaver)
: weaver_(weaver)
{
Q_ASSERT(weaver);
weaver_->finish();
Q_ASSERT(weaver_->isIdle());
weaver_->resume();
}
WaitForIdleAndFinished::~WaitForIdleAndFinished()
{
weaver_->resume();
weaver_->dequeue();
weaver_->finish();
weaver_->suspend();
Q_ASSERT(weaver_->isIdle());
}
|