Consider using guard pointers as they are set to null atomically on deletion see QPointer and the referenced counted version QSharedPointer