ElapsedMilliseconds() Problem ?

Für allgemeine Fragen zur Programmierung mit PureBasic.
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

Aber auch in dieser Version komme ich auf über 5,5 Sekunden. Also kann es nicht am Aufruf von ElapsedMilliseconds() liegen.
Und 1 bis zwei Millisekunden in zwei Zeilen Code wäre schon Krass viel, oder nicht?

Code: Alles auswählen

DisableDebugger

EnableExplicit

Define Diffangle.d = 179 ;Winkel um die sich das Objekt drehen soll
Define StepTime.d = 4000/Diffangle; in 4 Sekunden
Define Time2.d = ElapsedMilliseconds()
Define count.l = 0
Define Time.d = ElapsedMilliseconds()+ 4000
Define TimeNow.d
Repeat
 TimeNow = ElapsedMilliseconds()
  If TimeNow >= Time2
   
    count + 1
    Time2  = TimeNow + StepTime 
   
  EndIf 
 
Until count = 179; ElapsedMilliseconds() >= Time

EnableDebugger
Debug "Zeit " + Str(ElapsedMilliseconds()- Time + 4000 )
Debug "Count = " + Str(count)
Debug StrF(StepTime)
Debug"-------------------------"
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: ElapsedMilliseconds() Problem ?

Beitrag von ts-soft »

Ich weiß nicht, warum ihr immer den Debugger misst. Der beeinflußt die Zeit, alleine dadurch das er hinzugelinkt wurde,
unabhängig davon, ob enabled oder disabled.

Hier mal der letzte Code, ohne Debugger:

Code: Alles auswählen

EnableExplicit

Define Diffangle.d = 179 ;Winkel um die sich das Objekt drehen soll
Define StepTime.d = 4000/Diffangle; in 4 Sekunden
Define Time2.d = ElapsedMilliseconds()
Define count.l = 0
Define Time.d = ElapsedMilliseconds()+ 4000
Define TimeNow.d
Repeat
 TimeNow = ElapsedMilliseconds()
  If TimeNow >= Time2
   
    count + 1
    Time2  = TimeNow + StepTime
   
  EndIf
 
Until count = 179; ElapsedMilliseconds() >= Time

Define msg.s
msg = "Zeit " + Str(ElapsedMilliseconds() - Time + 4000) + #LF$
msg + "Count = " + count + #LF$
msg + StrF(StepTime)

MessageRequester("", msg)
Und natürlich den Debugger-Knopf ausschalten :)

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

Es bleibt dabei, bei mir braucht der Code über 5,5 Sekunden. Und da stimmt doch irgendwas nicht, oder bin ich jetzt wirre?
@ts-soft: bist du denn mit diesem Code innerhalb der 4 Sekunden ?
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: ElapsedMilliseconds() Problem ?

Beitrag von ts-soft »

SilverSurfer hat geschrieben:@ts-soft: bist du denn mit diesem Code innerhalb der 4 Sekunden ?
Darum geht es mir doch gar nicht, es geht nur darum, das zumindest, richtige Meßwerte ermittelt werden.
Zeitmessungen mit Debugger sind absolut sinnlos :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

Ah ja. Ein einfaches ja oder nein hätte mir mehr geholfen. :D
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: ElapsedMilliseconds() Problem ?

Beitrag von ts-soft »

Zeit: 4094
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

Ja danke. Und da ist das Problem. Wieso kommt bei mir ein Wert von über 5,5 Sekunden raus ?
Da scheint bei mir doch was mit ElapsedMilliseconds() nicht zu stimmen...Hm....
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

So, ersetze ich ElapsedMilliseconds() durch timeGetTime_() bekomme ich den gleichen Wert wie ts-soft....... Da habe wir das Problem und keine Lösung...lach
Ok, für mich spielt es keine Rolle, da ich unter Windows timeGetTime_() nutzen kann...
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: ElapsedMilliseconds() Problem ?

Beitrag von ts-soft »

Nutzt Du evtl. noch Win XP?

PS: Ich habe Linux genutzt zum Testen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
SilverSurfer
Beiträge: 32
Registriert: 14.06.2015 10:23

Re: ElapsedMilliseconds() Problem ?

Beitrag von SilverSurfer »

Nein, Windows 7.
Antworten