[Fix](ScannerScheduler) fix dead lock when shutdown group_local_scan_thread_pool (#21553)
This commit is contained in:
@ -66,6 +66,7 @@ ScannerScheduler::~ScannerScheduler() {
|
||||
|
||||
_is_closed = true;
|
||||
|
||||
_task_group_local_scan_queue->close();
|
||||
_scheduler_pool->shutdown();
|
||||
_local_scan_thread_pool->shutdown();
|
||||
_remote_scan_thread_pool->shutdown();
|
||||
@ -74,14 +75,14 @@ ScannerScheduler::~ScannerScheduler() {
|
||||
|
||||
_scheduler_pool->wait();
|
||||
_local_scan_thread_pool->join();
|
||||
_remote_scan_thread_pool->wait();
|
||||
_limited_scan_thread_pool->wait();
|
||||
_group_local_scan_thread_pool->wait();
|
||||
|
||||
for (int i = 0; i < QUEUE_NUM; i++) {
|
||||
delete _pending_queues[i];
|
||||
}
|
||||
delete[] _pending_queues;
|
||||
|
||||
_task_group_local_scan_queue->close();
|
||||
_group_local_scan_thread_pool->wait();
|
||||
}
|
||||
|
||||
Status ScannerScheduler::init(ExecEnv* env) {
|
||||
|
||||
Reference in New Issue
Block a user