1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/shadowyuan-raptor-lite

 / Детали:

В PollingThread обнаружена утечка памяти

Завершенные
Владелец
Создано  
30.11.2024

PollingThread::Init после освобождения RaptorEngine, PollingThread::thds_ пул потоков не освобождается, что приводит к утечке памяти


raptor_error PollingThread::Init(int rs_threads, int kernel_threads) {
    if (!shutdown_) return RAPTOR_ERROR_FROM_STATIC_STRING("PollingThread has been initialized");

    auto e = iocp_.create(static_cast<DWORD>(kernel_threads));
    if (e != RAPTOR_ERROR_NONE) {
        return e;
    }

    for (int i = 0; i < rs_threads; i++) {
        bool success = false;
        > ***********Здесь не освобождено************
        Thread *thd  = new Thread("iocp:thread",
                                 std::bind(&PollingThread::WorkThread, this, std::placeholders::_1),
                                 nullptr, &success);
        > ********************************
        if (!success) {
            delete thd;
            break;
        }

        thds_.emplace_back(thd);
    }

    if (thds_.empty()) {
        return RAPTOR_ERROR_FROM_STATIC_STRING("PollingThread: Failed to create thread");
    }

    shutdown_ = false;

    return RAPTOR_ERROR_NONE;
}

Комментарий (0)

GitLife Service Account Задача создана
GitLife Service Account изменить Статус задачи с Предстоит сделать на Завершенные
Развернуть журнал операций

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/shadowyuan-raptor-lite.git
git@api.gitlife.ru:oschina-mirror/shadowyuan-raptor-lite.git
oschina-mirror
shadowyuan-raptor-lite
shadowyuan-raptor-lite