Fenster&CLS

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

VirtualDreams

Betreff: Fenster&CLS

BeitragMi, Apr 28, 2004 20:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

Folgendes Problem:
Code: [AUSKLAPPEN]

while not keyhit(1)
    a=a+1
    text 0,0,"Blub" + a
    cls
wend


Dieses Programm zeigt - NICHTS.

Also nun zur Frage: Wie kann ich ein Fenster OHNE GRAFIKMODUS löschen, so das ich die textausgabe noch sehe. Der Schwerpunkt liegt hierbei auf der extremen Geschwindigkeit der schleife. Ich möchte bei jedem Schleifendurchgang eine aktuelle Ausgabe des Progs haben.

THX
 

Dreamora

BeitragMi, Apr 28, 2004 20:31
Antworten mit Zitat
Benutzer-Profile anzeigen
na ich würds mal mit flip versuchen Wink

und extreme geschwindigkeit kannste mit cls eh gleich vergessen, dass saugt recht am speed der schleifen
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

VirtualDreams

BeitragMi, Apr 28, 2004 20:48
Antworten mit Zitat
Benutzer-Profile anzeigen
flip funktioniert nur im grafikmodus, und nur da.

die schleife ist schnell. zum vergleich: im grafikmodus mit cls&flip = 100 durchgänge, ohne flip und grafikmodus: 6400 durchgänge/sec. also wenn das nicht schnell ist.

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMi, Apr 28, 2004 21:10
Antworten mit Zitat
Benutzer-Profile anzeigen
dann mach das doch mit
Code: [AUSKLAPPEN]
flip 0

dann gehts auch schnell im Graficmodus

100 Durchgänge mit Flip liegt daran das dein Monitor 100 Hz hat!
[BB2D | BB3D | BB+]

VirtualDreams

BeitragMi, Apr 28, 2004 21:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Das teil soll komplett ohne Grafikmodus auskommen, da nur Statusmeldungen ausgegeben werden, die ständig aktualisiert werden sollen.

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMi, Apr 28, 2004 21:21
Antworten mit Zitat
Benutzer-Profile anzeigen
das kleine proggi geht ja, allerdings sollte erst gelöscht werden
und dann der text ausgegeben werden
Code: [AUSKLAPPEN]
While Not KeyHit(1)
  a=a+1
   Cls
   Text 0,0,"Blub" + a
     
Wend

so in etwa... dann flackerts auch nicht mehr
[BB2D | BB3D | BB+]

VirtualDreams

BeitragMi, Apr 28, 2004 21:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Super, danke. Ich lösche nach anderen verfahren. weil ob ein cls am anfang einer schleife oder am ende steht spielt normalerweise keine rolle, es kommt das selbe heraus. Naja, vlt denkfehler, trotzdem


big thx

regaa

BeitragMi, Apr 28, 2004 21:36
Antworten mit Zitat
Benutzer-Profile anzeigen
und benutz die while schleife, das ist die schnellste.
UltraMixer Professional 3 - Download
QB,HTML,CSS,JS,PHP,SQL,>>B2D,B3D,BP,BlitzMax,C,C++,Java,C#,VB6 , C#, VB.Net

VirtualDreams

BeitragMi, Apr 28, 2004 21:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Nichts für ungut, aber die benutz ich seit meinem ersten post.

ich hab mit while .. wend ca 7300 Loops/sec - mehr kann man nicht rausholen. das reicht auf alle fälle für mein vorhaben.

Hubsi

BeitragMi, Apr 28, 2004 22:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab das gerade mal getestet, weil ichs gar nicht glauben wollte:
Code: [AUSKLAPPEN]
time=MilliSecs()
Repeat
a=a+1
Until a=10000000
Print MilliSecs()-time
a=0
time=MilliSecs()
While a<10000000
a=a+1
Wend
Print MilliSecs()-time
WaitKey()
End
Ich hab bei den 10 Mio. Durchläufen nur 4 ms Unterschied.
Repeat...Until => 32 ms
While...Wend => 36 ms Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Dreamora

BeitragDo, Apr 29, 2004 0:56
Antworten mit Zitat
Benutzer-Profile anzeigen
die Berechnungen sind alles andere als stabil

hängt vollständig von der Prozessorauslastung ab ... mal is das eine schneller, mal das andere ... die schwanken so im bereich von 10ms bei mir ( zwischen 24 und 34 )
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

regaa

BeitragDo, Apr 29, 2004 7:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Also bei mir gabs bei 1 mio durchläufe mehr als 300ms unterschied, und ich seh bei dir das die gesammtzeit noch nichtmals so lange dauert O_o. Ok, dann zieh ich meine Aussage zurück, hat wohl mehr was mit dem System zu tun.
UltraMixer Professional 3 - Download
QB,HTML,CSS,JS,PHP,SQL,>>B2D,B3D,BP,BlitzMax,C,C++,Java,C#,VB6 , C#, VB.Net

VirtualDreams

BeitragDo, Apr 29, 2004 9:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Die berechnungen sind ungenau! Von daher geben sie lediglich einen richtwert an.

PS: Laßt die Print oder Text-anweisungen raus und auch den rest, und die schleife hat ihre höchste umdrehung - natürlich bei 0 - 1% Prozessorauslastung. Nachteil: Man kann nicht sehen wie schnell sie ist.

Ich hab meine Messungen einmal mit print und einaml mit text gemacht:
Ergebnis -> mit print komm ich auf 6400 UPS, mit Text auf 7300 UPS.
 

storzi

BeitragDo, Apr 29, 2004 11:16
Antworten mit Zitat
Benutzer-Profile anzeigen
bei mir sind die auch ungefähr gleich schnell, mal das eine schneller, mal das andere Smile

-> ich würde mal behaupten es ist egal was man nimmt Wink
http://www.splattergamez.de

Hubsi

BeitragDo, Apr 29, 2004 12:35
Antworten mit Zitat
Benutzer-Profile anzeigen
VirtualDreams hat Folgendes geschrieben:
Laßt die Print oder Text-anweisungen raus und auch den rest, und die schleife hat ihre höchste umdrehung
Question In der Schleife wird ja lediglich ein Zähler hochgezählt. In beiden Schleifen also selbe Bedingungen. Wink
Um nicht missverstanden zu werden: Das sind, wie schon von VD erwähnt, lediglich Richtwerte. Im Prinzip sind beide gleich schnell.
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group