ich hab ihr eine einfache uhr, die mir die Prozesslaufzeit anzeigen soll (d.h. wie lange der Prozess bereits läuft). Dafür zählt Sie einfach hoch. Das ganze funktioniert auch so. Das Problem was ich habe, besteht darin, das diese Uhr abhängig von meiner Prozessauslastung arbeitet. Soll bedeuten, habe ich eine starke Auslastung meines PC, zählt die Uhr nicht richtig, was zu verfälchten Ergebnissen führt, weil die Uhr mal stehen bleibt etc. Wie würdet ihr das ganze handhaben oder lässt sich sowas ganricht anderst regeln? Zudem stört mich die Nutzung von Sleep. Das muss auf jedenfall noch raus, da so der Prozess immer angehalten wird. Vielleicht könnt ihr mal euere Purebasic Augen drauf werfen Danke
Code: Alles auswählen
Global sec,min,std
Procedure STOPUHR()
sleep_(1000)
sec=sec+1
If sec=60
sec=0
min=min+1
If min=60
min=0
std=std+1
EndIf
EndIf
SetGadgetText(12,Str(std)+":"+Str(min)+":"+Str(sec))
EndProcedure
If OpenWindow(0, 100, 200, 195, 260, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget, "PureBasic Window")
CreateGadgetList(WindowID(0))
TextGadget(12,10,10,250,20,"")
Repeat
EventID.l = WindowEvent()
If EventID = #PB_Event_CloseWindow ; If the user has pressed on the close button
Quit = 1
EndIf
;Sleep_(1000)
STOPUHR()
Until Quit = 1
EndIf
End