Hans-Peter Diettrich wrote:
Mark Morgan Lloyd schrieb:
Michael Schnell wrote:

(Same is true for any "busy wait" polling loops in the main thread and "busy wait" polling loops without sleep in worker threads.)

Also much database stuff in my experience. *Anything* which doesn't return immediately is very bad news from a usability POV.

IMO there is no strict borderline between possibly lengthy operations, from loading an file into memory up to loading a complex database query result. When the user cannot proceed unless the operation has finished, the GUI can wait that time, too.

Actually, I think there is a distinction here. A routine loading a file can recognise that it's in the foreground thread and make the occasional Application.ProcessMessages call, but in the general case I don't think there's provision for an OnIdle callback in database drivers. I think that Delphi/BDE had something like that, but it only worked for Oracle ODBC.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to