[Development] Trigger Qt event loop from external message loop
Kuba Ober
kuba at mareimbrium.org
Thu Dec 19 21:52:55 CET 2013
Is this supported on all platforms now? IIRC it did not work OS X last time I tried, but yes,
it did work great on Windows.
— Kuba
On Dec 14, 2013, at 3:25 PM, Roland Winklmeier <roland.m.winklmeier at gmail.com> wrote:
> Thanks very much Olivier and Thiago!
> That works brilliant.
>
> No idea why I forgot that QThread must not be used. But its of course
> obvious. I made a quick setup with native threads (std::thread is
> unfortunately not supported by VC2010) and it works perfectly now.
>
> In case someone is interested:
> - - I added a additional shared library spawning a thread and links the
> actual plugin during runtime with LoadLibrary/dlopen. No Qt stuff in here.
> - - Second shared library creates QApplication object and runs its
> exec() loop.
>
> Cheers Roland
>
> Am 14.12.2013 19:23, schrieb Thiago Macieira:
>> On sábado, 14 de dezembro de 2013 12:42:32, Roland Winklmeier
>> wrote:
>>> n qthread_win.cpp QThreadPrivate::start -> void
>>> QThreadPrivate::createEventDispatcher(QThreadData *data) {
>>> QEventDispatcherWin32 *theEventDispatcher = new
>>> QEventDispatcherWin32;
>>> data->eventDispatcher.storeRelease(theEventDispatcher);
>>> theEventDispatcher->startingUp(); }
>>
>> You must not use QThread.
>>
>> You need to start your thread before using any QObject-derived
>> classes. Once you're there, instantiate the QApplication
More information about the Development
mailing list