Phänomen: Software schneller, wenn Media-Player läuft!

Gast #458736
Lesenswert?

Hallo allerseits,

ich hab hier gerade ein eigenartiges Phänomen.
Ich bin dabei eine MFC-Software (VC++7) zu schreiben, die in 
verschiedene MDI-Fenster relativ viele Zeichen und Grafiken ausgibt.

Nun habe ich zufällig entdeckt, dass die Software (die Routinen, die für 
die Anzeige zuständig sind) ca. um Faktor 6-8 schneller wird, wenn der 
Mediaplayer oder Quicktime im Hintergrund gestartet wird. Andere 
Software, die nicht unmittelbar mit Videoausgabe zu tun haben, wie 
IExplorer, Word etc. haben keinen Einfluss.

Mir scheint, als würden Mediaplayer und Co. eine Art "Highspeed" Modus 
in den Anzeigefunktionen (Grafikkartenhardware?) starten.

Hat jemand schon mal ähnliches festgestellt und wie kann man diese 
Funktionen in eigener Software benutzen?

Vielen Dank schonmal
Andreas
Gast #458739
Lesenswert?

Ich glaube eher, daß der Mediaplayer, das Spionagetool Nummer 1 der 
Firma Microsoft, beim Aufruf der wiederzugebenden Datei der DRMs checkt 
und alle anderen Redmonter Spionagedienste abschaltet. In Summe wird 
dann de PC weniger gebremst!
Gast #458833
Lesenswert?

Ja genau, ich benutze mehrere Threads und bremse den Anzeigethread mit 
"sleep" aus. Ist nicht besonders elegant - ich weiß - aber das Ganze ist 
noch in der Konzept-Phase. Das Runterschalten der Timerperiode auf 1ms 
klingt erst mal logisch. Ich werde das morgen gleich mal ausprobieren.

Vielen Dank für Eure schnelle Hilfe!

Grüße Andreas
Gast #459039
Lesenswert?

Vielleicht klinge ich jetzt wie Deine Schwiegermutter, die alles besser 
weiss. Aber ein Sleep sollte man generell meiden wie die Pest.
Normalerweise arbeitet man mit Events, also Ereignissen und dann sollten 
solche Probleme gar nicht erst auftauchen.

Für Deinen Fall, wenn Du das GUI nur ab und zu mal neu aufbauen willst, 
würde ich eher einen Timer aufsetzen, dessen Event dann die gewünschten 
Funktionen/Methoden aufruft.
Gast #459114
Lesenswert?

Hallo Johnny,

da gebe ich Dir Recht. Wie gesagt, ich bin gerade am Konzeptionieren. 
Das wird dann alles noch bereinigt und optimiert, wenn das Grundgerüst 
steht.

Im Übrigen war die Funktion "timeBeginPeriod(1)" genau die, die den oben 
beschriebenen Effekt behoben hat. Also vielen Dank nochmal!


Gruß Andreas

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren