Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249478 (10914)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Schlaufe mitmöglichst wenig Systemressourcen
Nico Raschle
| Datum:03.09.01 19:47 (keeper@gmx.ch) |
Hallo Ich möchte ein Programm schreiben das immer im Hintergrund läuft und z.B. alle 5-50min eine bestimmte Befehlsreihenfolge ausführt. Wie mache ich das so das am wenigsten Systemressourcen verbraucht werden? Wie würde das funktionieren wenn mein Programm nur immer dann reagieren sollte wenn ein bestimmter Punkt in einer Textdatei geändert wurde? Auch so das ich am wenigsten Systemressourcen verbrauche? Vielen Dank! Gruss Nico
Frank Abbing
| Datum:03.09.01 20:17 (frankabbing@12move.de) |
Hallo Nico, die eleganteste Methode ist, wenn du einen separaten Thread öffnest. Das ist quasi ein zweites Programm, welches von deinem ersten Programm aus gestartet wird und einen Teil deines Hauptprogrammes abarbeitet. Mit CreateThread(...) wird er gestartet. Ich hab' leider kein Beispielprogramm in Profan, du solltest die WinAPI hierfür ausgiebig studieren. Ist nur eine Möglichkeit, aber bestimmt die eleganteste... Bis dahin, Frank
Nico Raschle
| Datum:03.09.01 21:26 (keeper@gmx.ch) |
Wird damit die Rechenleistung weniger beansprucht? Danke und Gruss Nico Raschle
Angela M.
| Datum:05.09.01 16:32 |
Hi Frank, was muß ich denn bei dem start-Parameter angeben. Was ich auch angebe, es funktioniert einfach nicht. Kannst Du nicht ein kleines Beispiel posten. Gruß Angie
Frank Abbing
| Datum:05.09.01 16:44 (frankabbing@12move.de) |
Hallo, hab' eigentlich gar keine Zeit, aber ich versuche in den nächsten Tagen was zu improvisieren, ok? Bis dahin, Frank
Angela M.
| Datum:07.09.01 16:54 |
Hi Frank, das ist kein Problem, ich wollte es nur mal ausprobieren. Bisher hielt ich es nicht für möglich, daß man mit Profan mehrere Threads nutzen kann. Aber Deine ProSpeed.dll hat mir gezeigt, daß mit Profan nichts unmöglich ist. Gruß Angie
Frank Abbing
| Datum:07.09.01 17:51 (frankabbing@12move.de) |
Hallo, muß dich leider enttäuschen. Das mit den Threads geht leider NICHT in Profan. Es scheint keine Möglichkeit zu geben, direkte Programmadressen zu lokalisieren, weil der Profancode kein Native-Code ist, sondern nur übersetzt wird. Und die ProSpeedDll, die zwar Threads benutzt, ist aber nicht in Profan geschrieben, sondern in Assembler / Maschinencode.... Sorry! MfG Frank
Angela M.
| Datum:08.09.01 13:14 |
Hi Frank, das ist aber schade:-( Kannst Du nicht in Deiner ProSpeed.dll ein paar Funktionen machen, damit auch wir armen Profaner von mehreren Threads profitieren können? Gruß Angie
Frank Abbing
| Datum: 08.09.01 13:47 (frankabbing@12move.de) |
Hallo! Klar, würde ich schon machen, aber wie sollte sowas gehen? Das läßt sich nicht so biegen, das von der Dll aus dein Profan²-Programm abgearbeitet wird. Aber Roland G.H. bemüht sich gerade, Threads für Profan ab Version 7.5 einzuführen. Schaun mer mal, was draus wird... Bis dahin, Frank
Jörg Sellmeyer
| Datum:03.09.01 22:57 (joerse@gmx.de) |
Hallo Nico, Wenn Dein Programm nur alle 5 min eine Aktion starten soll, kannst Du es so lange in den "Ruhestand" schicken. Mit: Sleep (5 * 60) * 1000 schläft Dein Programm 5 min. Wenn es etwas überwachen soll, kannst Du Sleep 1 (oder 10 oder ...) verwenden und es testet alle 1 (oder 10 oder ...) Millisekunden ob die Bedingung für die Aktion erfüllt ist. Die Prozessorbelastung ist dabei minimal. Viele Grüße Jörg
Nico Raschle
| Datum:03.09.01 23:12 (keeper@gmx.ch) |
Danke für die raschen Antworten. Ich werde es so schnell wie möglcih ausprobieren :) Gruss Nico
Gert Severin
| Datum:08.09.01 10:54 (gs-sdl@web.de) |
hallo Nico, schau Dir doch mal den Befehl "SetTimer" an. Der hat die Systemressourcen in einem "Warte"-programm bei mir drastisch reduziert. Tschüß Gert.

| Zurück zur Übersicht