[fpc-pascal] D-Bus. Non blocking listening for signals

Michael Van Canneyt michael at freepascal.org
Sun Jan 2 23:21:04 CET 2011



On Sun, 2 Jan 2011, dibo20 at wp.pl wrote:

> Hi,
>
> Month ago I posted a bug (http://bugs.freepascal.org/view.php?id=18117)
> Admin give me solution and feedback, but this solution doesn't work well and 
> i think he don't read my last comment.
> So, maybe someone have this same problem. There is good demo for d-bus 
> rewrited line by line from official C example. It works fine, but this is 
> console demo. This demo listen for signals in main loop. In GUI application, 
> this example blocks user interface. I received a solution to use 
> Application.OnIdle event for check for signal. It works, but not detect all 
> signals. If host send 10 this same signals, my application detect only 4-6.
> This problem raise after upgrade d-bus interface from 0.92 to 1.2.16 two 
> months ago. Previously, I could use timers and threads for listening signals.

The admin (me) did see your comment but didn't find time yet to investigate 
the problem in great length :)

However, it seems that Henry Vermaak gave you a solution. I am glad he did, 
because I have written a complete set of D-BUS components which I was about 
to publish, and they would suffer from the same problem when used in a GUI app.
So now I know that I should create an integration with the Lazarus message loop.

Michael.



More information about the fpc-pascal mailing list