[Lazarus] Application slow shutting down
susie.k.nicol at gmail.com
Wed Sep 30 10:11:41 CEST 2015
On Wed, Sep 30, 2015 at 7:50 PM, Michael Van Canneyt <michael at freepascal.org
> On Wed, 30 Sep 2015, Susie Nicol wrote:
>> I have an application with a main form, and several others whuich are only
>> ever used in modal form.
>> The application is slow to terminate, and I cannot see why.
>> XFCE on Linux complains that the window containing the main form cannot be
>> closed because 'the application may be busy'.
> 1. Are you using threads ?
I'm not using threads.
> 2. Do you create a lot of components dynamically that are freed in the
> destructor of the form ?
> Both can cause significant delays.
Very few overall, and I thought they were safely freed. But heaprtc shows
66 unfreed memory blocks, so that is something I shall check tomorrow (it's
late in NZ)
>> I am using Lazarus 1.4.2, 64-bit, Linux XFCE desktop, GTK+2 widget set.
>> Any suggestions about where to look next will be very welcome.
> What I usually do in such case is not use the debugger, but check using
> the strace command-line utility if there is still some activity in the
> Put a writeln('something') before and after the Application.Terminate, and
> check what happens between the write() commands in strace's output.
Thanks for that ingenious suggestion. A quick check shows nothing happens
between the two write()s, so Application.Terminate is returning
immediately. There follows 96 thousand lines of output before the program
gets SIGKILL, so I guess that it was pretty busy!
Something for me to get my teeth into at least.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Lazarus