Я ищу решение для планирования удаления объекта между потоками.Документы о поведении deleteLater
не совсем ясны.Могу ли я вызвать эту функцию в потоке, который не является владельцем объекта?
Например, объект X принадлежит потоку A, а в потоке BI хотел бы удалить объект X.Поскольку объект может быть внутри обработки событий в данный момент (в потоке A), я не могу безопасно удалить его, пока он не вернется в цикл обработки сообщений.Если я вызываю deleteLater
из потока B, однако документы, похоже, указывают, что он удалится, как только поток B вернется в цикл обработки сообщений.
В настоящее время я использую подход, при котором сигнал, излучаемый в потоке A,подключен к слоту, который вызывает deleteLater
.Мне интересно, есть ли, возможно, более простой способ сделать это - если я действительно могу просто позвонить deleteLater
из любого потока.