[fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Matthias Klumpp
Hello! I have a serious problem with a shared lib and threads. To fix a critical bug in my app, the shared library has to execute commands asynchronous. To make the non-blocking API I use classes inherited from TThread, which process serveral actions. Those threads have to submit data back to the

Re: [fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Michael Van Canneyt
On Fri, 16 Apr 2010, Matthias Klumpp wrote: Hello! I have a serious problem with a shared lib and threads. To fix a critical bug in my app, the shared library has to execute commands asynchronous. To make the non-blocking API I use classes inherited from TThread, which process serveral

Re: [fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Matthias Klumpp
Set the thread manager of the library to the main application thread manager. That should hopefully work. But it is not guaranteed; there are many issues with libraries and threads under linux. Michael. How do I do that? (There is also another thing which I have forgotten: The library should

Re: [fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Michael Van Canneyt
On Fri, 16 Apr 2010, Matthias Klumpp wrote: Set the thread manager of the library to the main application thread manager. That should hopefully work. But it is not guaranteed; there are many issues with libraries and threads under linux. Michael. How do I do that? Export

Re: [fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Matthias Klumpp
Thank you for your help! I will now move some parts of the lib to a DBus daemon and run only the necessary parts of the lib in extra threads. I'll also try to set the threadmanager. On Fri, 16 Apr 2010 13:10:15 +0200 (CEST), Michael Van Canneyt mich...@freepascal.org wrote: On Fri, 16 Apr 2010,

Re: [fpc-pascal] TThread.Synchronize() in shared library

2010-04-16 Thread Marco van de Voort
In our previous episode, Michael Van Canneyt said: Export SetThreadManager() and call it from your main application with the threadmanager from the main application. Should wakemainthread or something be set also? ___ fpc-pascal maillist -