ProSpeed.dll
Wenn sie Fragen und Anregungen zu meiner ProSpeed DLL oder zu den Profan²-Sourcecodes und Demos haben, dann sind sie hier richtig. Auch neue Vorschläge sind jederzeit willkommen. Und bitte mit richtigem Namen und Email-Adresse einschreiben. Danke.
  Suchen
 Zurück zur Übersicht
 AutorThema: Thread-Tempo?
Mischa Brandt
Datum:07.06.02 16:09 Antwortenals Email verschicken  


Hi Frank!

Hm, das mit der Systemleistung..
Möglicherweise irre ich mich ja auch mit der 100%
Auslastung.
Ich schildere mal wie ich es erlebt habe:
(WindowXP-PE,Profan7.0)

Mir ist das auch nur durch Zufall aufgefallen, als ich meine dll mit der ProSpeed probehalber kombinieren wollte.
Die Funktionen der media.dll werden allesamt durch 'Api-Sleep' unterbrochen. Das gleiche im Profanprogramm.
(Der Taskmonitor von XP zeigt mir im Sys.Tray was an Leistung gebraucht wird) Auslastung minimal. OK. Ich binde die ProSpeed.dll ein, erstelle einen Sprite, starte das Programm erneut, der Thread der media.dll spuckt nur noch in Zeitlupe die Bilder raus. Blick zum Tray. 100% Auslastung. Seltsam, denke ich, nehme die media-Funktionen komplett raus. Starte das ganze nochmal. (wohlgemerkt, ein Sprite und Sleep-Aufruf in der Hauptschleife) Immer noch 100% Auslastung! Hm, ich setzte die 'Sprite-bremse' ein...und minimale Auslastung.

Hier mein Testprogramm:


Declare prospeed&
prospeed&=usedll("C:\PRFellow\BIN\ProSpeed.dll")
$I C:\PRFellow\LIB\Prospeed_Funktionen.inc

Windowstyle 112
window Div(Sub(%maxx,480),2),Div(Sub(%maxy,400),2)-480,400
Loadbmp "back.bmp",0,0;0

Declare map&,kopie1HDC&,kopie2HDC&,Sprite1&,name$,ende%

name$="Sprite.bmp"
map&=LoadExtBmp(addr(name$),%HDC)

kopie1HDC&=LoadExtBmp(0,%hdc)
kopie2HDC&=LoadExtBmp(0,%hdc)

CopyExtBmp(kopie1HDC&,0,0,480,400,%HDC,0,0,0)
CopyExtBmp(kopie2HDC&,0,0,480,400,%HDC,0,0,0)

Sprite1&=InitSprite(map&,%HDC,kopie1HDC&,kopie2HDC&,0,0,60,60,5,1,10,100,100,1,1)
'SpriteThreadBrake (1)

Whilenot ende%
Case %mousepressed:ende%=1
Sleep 50
Endwhile

DeleteAllSprites()
FreeExtBmp(kopie1HDC&)
FreeExtBmp(kopie2HDC&)
freedll prospeed&

Das System scheint mir gegenüber sehr ungerecht zu sein! ;-)
(Bin ich aber gewohnt, Computer mögen mich nicht, da ich sie zu sehr quäle :-)
Aber ich sehe da kein Problem, man kann den ThreadBrake ja auf 'Bedarf' einschalten und auch wieder ausschalten. Nur ohne die Bremse gehts, wie ich schon sagte bei mir nicht, deswegen wollte ich darauf hinweisen.


Gruß,
Mischa




Frank Abbing
Datum: 07.06.02 20:30 Antwortenals Email verschicken (frankabbing@12move.de) 


Hi Mischa,

"Das System scheint mir gegenüber sehr ungerecht zu sein! ;-)
(Bin ich aber gewohnt, Computer mögen mich nicht, da ich sie zu sehr quäle :-)"

Der Witz ist einmalig !!!!! ;-))
Aber im Ernst. Du hast recht, der Sleep Befehl im Sprite-Thread ist wirklich nicht mehr da...
Computer scheinen mich auch nicht zu mögen, immer verschwinden irgendwelche Dinge ;-)))
Hab' ihn wieder eingebaut, in Version 2.4 wird er wieder da sein, zusammen mit allerhand lustigen Neuerungen.

Gruß, Frank



 Zurück zur Übersicht
 

 Ein kostenloses WebMart Forum
WebMart Homepage Tools kostenlos
doteu.info: Don´t miss your .eu-Domain