Ja.
Pplu fragt sich, warum Programme langsamer ausgeführt werden, wenn das System mit mehreren Monitoren ausgeführt wird .
Wenn Sie mehr als einen Monitor haben, gibt es natürlich mehr Dinge auf dem Bildschirm, die das System nachverfolgen kann. Aus demselben Grund werden Programme auf einem großen Monitor langsamer ausgeführt als auf einem kleinen Monitor.
Und wenn es nur einen Monitor gibt, sind Funktionen wie " MonitorFromPoint
Trivial", wenn das Flag in etwa so ist
MONITOR_DEFAULTTONEAREST
, denn wenn es nur einen Monitor gibt, werden Fragen wie "Welcher Monitor ist diesem Punkt am nächsten" beantwortet? wird sehr einfach.
Wenn Ihre beiden Monitore nicht die gleichen Abmessungen haben, ist die Vereinigung der beiden Monitore nicht rechteckig. Dies erschwert das Beschneiden der Vereinigung aller Monitore.
Ich vermute jedoch, dass die große Strafe für mehrere Monitore eintritt, wenn Sie den Fehler begehen, Ihre Monitore auf verschiedene Farbformate einzustellen, z. B. wenn Sie einen Monitor auf das 565-Format und einen anderen auf 24 bpp einstellen.
Wenn die beiden Monitore nicht dasselbe Farbformat verwenden, müssen Programme DIBs anstelle von DDBs für Bildschirm-Bitmaps verwenden, falls ein Fenster in ein Fenster mit einem anderen Farbformat verschoben wird (oder schlechter positioniert ist, so dass es überlappt) zwei Monitore mit unterschiedlichen Farbformaten). Grundsätzlich müssen Programme nur die "Worst-Case" -DIB verwenden. Wenn beispielsweise ein Monitor den Wert 555 und der andere den Wert 565 hat, reicht ein 565-DIB aus. In der Praxis greifen die meisten Programme jedoch nur auf eine DIB mit 24 oder 32 Bit / s zurück, wenn sie mit Monitoren mit unterschiedlichen Farbformaten konfrontiert werden.
(Sie fragen beim Aufruf ab, ob alle Monitore das gleiche Farbformat haben
GetSystemMetrics(SM_SAMEDISPLAYFORMAT)
.)
Da eine Formatkonvertierung stattfindet, wenn eine DIB auf ein Gerät mit einem anderen Farbformat übertragen wird, bedeutet das Erzwingen, dass ein Programm seine Bitmaps als DIBs beibehält, dass für mindestens einen der Monitore (und wahrscheinlich für beide) eine Verarbeitung durchgeführt wird eine Formatkonvertierung, wenn diese DIB auf dem Bildschirm gezeichnet wird. Es gibt auch einige verschiedene Optimierungen, die deaktiviert werden, wenn nicht alle Monitore dasselbe Farbformat verwenden, da die Kosten für die Verwendung von DIBs die Einsparungen aus der Optimierung überwiegen.
Wenn Sie dies noch nicht getan haben, gehen Sie zu Ihren Anzeigeeinstellungen und überprüfen Sie, ob Sie alle Ihre Monitore auf die gleiche Farbtiefe eingestellt haben. Wenn Sie dies nicht tun, geht eine große Klasse von Grafikoptimierungen verloren.