Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   C# Schleife? Timer? (https://www.delphipraxis.net/200281-schleife-timer.html)

derseitzer 6. Apr 2019 10:35

Schleife? Timer?
 
Ich stehe gerade etwas auf dem Schlauch.. vielleicht liegt es daran das ich wenig geschlafen habe.. :oops:

Ich möchte, das mein Form-Programm eine Schleife so effizient wie möglich durchläuft. Wenn ich so etwas wie while(bla) mache, bekommt die GUI natürlich keine Interaktionsfähikeit mehr (ich möchte sozusagen das "bla" per buttonclick auf false stellen können, was mit while(bla) nicht möglich ist). Außerdem wäre ein Timer ebenfalls nicht die richtige Option, da ich möchte, dass da Programm effizient arbeitet und sobald die Schleife fertig ist, sie sofort wieder beginnt.
Ist die Lösung Multithreading? Heute ist wirklich nicht mein Tag, aber wär schön wenn mir jemand die Augen öffnet :P

Luckie 6. Apr 2019 10:42

AW: Schleife? Timer?
 
Jupp. Threads wären die richtige Lösung.

derseitzer 6. Apr 2019 10:54

AW: Schleife? Timer?
 
Danke dir :)

dummzeuch 6. Apr 2019 12:51

AW: Schleife? Timer?
 
Auch wenn ich bestimmt gleich wieder einen auf's Dach kriege dafür:

Delphi-Quellcode:
Application.ProcessMessages;
ist deutlich weniger aufwändig. Man muss halt einige Dinge beachten. Ich habe darüber vor einger Zeit mal geblogt.

Ups, es ging um C#, hatte ich überlesen.

Schokohase 6. Apr 2019 13:18

AW: Schleife? Timer?
 
Wenn C# richtig ist, dann gibt es dort auch noch async await, was gerade den Einsatz nahe an der GUI sehr vereinfacht.

Da braucht man sich mit so einer Krücke wie
Delphi-Quellcode:
Application.ProcessMessages
nicht herumschlagen.

Bernhard Geyer 6. Apr 2019 13:23

AW: Schleife? Timer?
 
Zitat:

Zitat von dummzeuch (Beitrag 1429629)
Auch wenn ich bestimmt gleich wieder einen auf's Dach kriege dafür:

Delphi-Quellcode:
Application.ProcessMessages;
ist deutlich weniger aufwändig. Man muss halt einige Dinge beachten. Ich habe darüber vor einger Zeit mal geblogt.

Mittlerweile kann man Threads in Delphi mit den neuen Spracherweiterungen (10.1 ?) sehr viel einfacher Nutzen.

Schokohase 6. Apr 2019 13:25

AW: Schleife? Timer?
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1429639)
Zitat:

Zitat von dummzeuch (Beitrag 1429629)
Auch wenn ich bestimmt gleich wieder einen auf's Dach kriege dafür:

Delphi-Quellcode:
Application.ProcessMessages;
ist deutlich weniger aufwändig. Man muss halt einige Dinge beachten. Ich habe darüber vor einger Zeit mal geblogt.

Mittlerweile kann man Threads in Delphi mit den neuen Spracherweiterungen (10.1 ?) sehr viel einfacher Nutzen.

Fragte der TE nicht nach C#? Was hilft es ihm wie man das in Delphi umsetzt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz