Дано: QThread_A, QThread_B QThread_A по сути управляет, потоком QThread_B. Он создает для

него объекты QObject, помещает их в QThread_B, время от времени через сигнал - слотовое соединения запускает довольно продолжительные функции, и все-бы хорошо, но QThread_A при некоторых внешних обстоятельствах, так же должен удалять QObject находящийся в QThread_B. И это удаление парой попадает, на время выполнения функции в QObject и тогда приложение падает.
Вопрос: Как безопасно удалить QObject из другого потока???

5 ответов

4 просмотра

deleteLater()

BAHR- Автор вопроса
Roman Makovskiy
deleteLater()

Пробовал:( В документации пишут, что это безопасно. На деле он не дожидается окончания выполнения "долгой" функции и удаляется раньше...

BAHR
Пробовал:( В документации пишут, что это безопасн...

Ставить флаг из первого потока. В долгой функции его проверять и сразу выходить если он стоит. После этого - deleteLater.

BAHR- Автор вопроса
Suigintou45 E14
Ставить флаг из первого потока. В долгой функции е...

Спасибо. Интересный вариант. позже попробую.

BAHR
Пробовал:( В документации пишут, что это безопасн...

Я бы на твоём месте все таки усомнился в своей реализации. Уверяю тебя, deleteLater не мог вызваться раньше, чем освободился тот поток, в который мувнут объект.

Похожие вопросы

Обсуждают сегодня

вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Чет мне ссыкотно опять Rainlab.User в проект ставить. Кто знает, опять наотъебись все сделали или после обнов пользоваться можно?
Black Cat
10
ребят, привет есть ли возможность мигрировать Policies + Auth Methods из нескольких Vault в один? пытаюсь сократить Vault кластера, немного не удобно что для каждой тестовой ...
azadevlab
2
коллеги привет. уже второй день бьемся об заклад с одной ошибкой, может вы сталкивались с таки странным поведением? есть тестовый сервер, на который паблишим релизную версию W...
Magzhan
11
это группа токсиков или тех кто помогает?
Ибрагим
9
Всем привет. Кто подскажет, как сделать авто обновление стороннего модуля при запуске контейнера. Мб есть команда при запуске контенера или в докер файле нужно приписать настр...
Trum_t Malyuzhenets
1
В смысле более затратная? Общая стоимость владения лошадью меньше, чем автомобиля. В среднем.
Sergej R
10
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
Карта сайта