Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
möchte z.b 20 dateien im abstand von 10 sekunden prüfen ob eine änderung vorgenommen wurde. |
Re: Wie viele Threads kann man in einer Anwendung starten?
Es gibt als Gegenstück zu den Threads noch Fiber. Diese sind leichter zu verwalten. Gibts aber erst afaik ab Win2k.
|
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
Da nimmt die die Win-API die meiste Arbeit ab. Du kannst Dich dafür registrieren, dass Du bei Änderung einer Datei/Verzeichnis benachrichtigt wirst. Dafür gibt es auch Delphi-Komponenten. Such mal hier im Forum oder bei torry.net nach DirectoryMonitor oder DirMonitor. |
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
Das kenn ich nämlich auch nicht... |
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
|
Re: Wie viele Threads kann man in einer Anwendung starten?
Ich glaube nicht, dass Fiber hier nützlich sind.
Für die, die nicht wissen, was Fiber sind: Ein Thread kann mehrere Fiber verwalten. Mit Fibern kann man eine Art Multithreading realisieren, aber kein präemptives, sondern nur kooperatives, da zu einem anderen Fiber nur gewechselt wird, wenn man SwitchToFiber aufruft. Da Fiber aber nicht wirklich parallel arbeiten und sich auch nicht in kurzen Zeiträumen abwechseln, denke ich nicht, dass sie in der genannten Angelegenheit von Nutzen sind. |
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
Ein Timer erzeugt einen Thread, in welchem er abgearbeitet wird. |
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
Abgesehen mal davon, gibt es entsprechende API-Funktionen, um Verzeichnisse auf Änderungen zu überwachen ([dp]Verzeichnis überwachen[/dp]). |
Re: Wie viele Threads kann man in einer Anwendung starten?
Zitat:
Hab ich irgendwo behauptet, dass die API-Funktion SetTimer verwendet wird? Die VCL erstellt einen neuen Thread, wenn ein TTimer verwendet wird. Das ist doch richtig, oder nicht? |
Re: Wie viele Threads kann man in einer Anwendung starten?
@Luckie: also ich persönlich meinte ja den guten alten TTimer ;) Und ich war der Meinung dass sich der eines eigenen Threads bediente :gruebel:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:17 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