mirror of
https://github.com/MariaDB/server.git
synced 2025-08-31 22:22:30 +03:00
Fix compile error on centos6. it does not like std::this_thread::sleep()
Simplify task_group destructor. No tasks must be running or queued into task group is being destroyed.
This commit is contained in:
@@ -19,6 +19,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111 - 1301 USA*/
|
|||||||
#include <condition_variable>
|
#include <condition_variable>
|
||||||
#include <tpool_structs.h>
|
#include <tpool_structs.h>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
|
#include <assert.h>
|
||||||
namespace tpool
|
namespace tpool
|
||||||
{
|
{
|
||||||
task_group::task_group(unsigned int max_concurrency) :
|
task_group::task_group(unsigned int max_concurrency) :
|
||||||
@@ -78,13 +79,6 @@ namespace tpool
|
|||||||
|
|
||||||
task_group::~task_group()
|
task_group::~task_group()
|
||||||
{
|
{
|
||||||
std::unique_lock<std::mutex> lk(m_mtx);
|
assert(m_queue.empty() && !m_tasks_running);
|
||||||
m_queue.clear();
|
|
||||||
while (m_tasks_running)
|
|
||||||
{
|
|
||||||
lk.unlock();
|
|
||||||
std::this_thread::sleep_for(std::chrono::milliseconds(1));
|
|
||||||
lk.lock();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user