[fpc-pascal] GUI multithreaded Win32 program sometimes freeze when quitting
Dennis
dec12 at avidsoft.com.hk
Tue Apr 18 13:32:21 CEST 2017
I have an win32 multithreaded program written in lazarus 1.7, FPC 3.1.1
From time to time, when it quits, it will freezes and from the task
manager, the program will occupies the entire CPU core.
I noticed that it will happen more often if:
1)
constructor TMyComponent.Create(TheOwner : TComponent);
begin
self.some_component := TSomeComponent.Create(TheOwner);
end;
instead of
constructor TMyComponent.Create(TheOwner : TComponent);
begin
self.some_component := TSomeComponent.Create(self);
end;
2) if the program executes some methods of a nil object
3) if I don't do a build all when some common units are changed by
another project.
Since this freezing behavour does not happen during debugging, I have
spent months trying to fix it but failed.
Any suggestions are welcome.
Dennis
More information about the fpc-pascal
mailing list