а зачем тогда тут многопоточность если тебе нужно последовательно выполнять код?
Вам кэллбэк у фабрики нужен синхронный или асинхронный или в созданном объекте через invokeMethod хотите вызывать? я просто до конца понять не могу что вам нужно
Я так понимаю попробовать все это сделать в одном потоке с учетом того факта что QEventLoop не вешают GUI не катит?))
Можно видео пример проблемы если это не секретно?)
DBProductsNode наследуется от QObject?