AnonymousThread.dpr 680 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. program AnonymousThread;
  2. {$APPTYPE CONSOLE}
  3. {$R *.res}
  4. uses
  5. Classes,
  6. Quick.Commons,
  7. Quick.Console,
  8. System.SysUtils,
  9. Quick.Threads;
  10. begin
  11. try
  12. ReportMemoryLeaksOnShutdown := True;
  13. TAnonymousThread.Execute(
  14. procedure
  15. var
  16. i : Integer;
  17. begin
  18. for i := 0 to 10 do cout('Working %d',[i],etTrace);
  19. cout('executed thread',etSuccess);
  20. end)
  21. .OnTerminate(
  22. procedure
  23. begin
  24. cout('terminated thread',etSuccess);
  25. cout('PRESS <ENTER> TO EXIT',etInfo);
  26. end)
  27. .Start;
  28. ConsoleWaitForEnterKey;
  29. except
  30. on E: Exception do
  31. Writeln(E.ClassName, ': ', E.Message);
  32. end;
  33. end.