Hey
wie jeder kennt gibt es so Meinche Trix um die Performance innerhalb der form zu verbessern wie zum beispiel der Befehl; DoubleBuffered = True zu setzen.
Ich wollte an der stelle fragen ob es noch weitere nützliche Codes gibt
um etwas besser zu Performen zu können.
Meinche einer setzt hier bei auf das Klassische Dispose befehl
um wieder Speicher frei zu geben.
Aber ich würde gern mehr erfahren ob es noch mehr Möglichkeiten gibt
wie das DoubleBuffered Schema :3
Ja ich bin relativ neu in dem Programmierer bereich aber ich kenne mich
mittlerweile recht gut aus bzw komme gut zurecht nur würde ich gern mehr und
auch neue dinge mir aneignen wollen
ahja und bevor ich es vergesse schreibt bitte daneben wen es euch nichts aus macht was es genau verbessert
Schließlich will ich es ja auch verstehen können ^^
Liebe Grüße
ProDielerNR(1)
DoubleBuffered ist aber primär nicht für die Performance gedacht, ich weiß auch nicht pauschal wie sich das darauf auswirkt ehrlich gesagt, es werhindert halt lediglich das die Form bei manchen dingen flackert weil die öfters neu berechnet wird als sie gezeichnet wird.
Disposing ist auch eher ein Beispiel um Systemresourcen wie Streams auf Dateien nach Verwendung wieder freizugeben, damit du eine Resource mit deiner Anwendung nicht weiter blockierst, nachdem du mit deinen Operationen, z. B. Laden, eigentlich schon fertig bist.
Denke die wichtigsten Dinge die man berücksichtigen sollte findet man, wie so üblich, mit den ersten drei bis fünf Google Treffern. Ist auch nicht immer sinnvoll alles strikt zu optimieren, vieles macht die Runtime auch schon, Stichwort kaputt optimieren.
Ich wusste erlich gesagt nicht wonach ich suchen soll daher habe ich hier nach Rat gefragt/gesucht.
Ich werde mir auf jedenfall die links mir heute Abend durchlesen.
Super das du mich korrigiert hast, ich hab mir jedoch schon so etwas gedacht
aber auch von der Berechnung her wird es Optimiert zumindest wen es um Transparenz geht.
So kommt es mir Jeglich vor aber super erklärt
Anmerkung;
Man ist es schwer sich nicht zu bedanken
(wegen der regel) das fehlt mir immer wieder so auf xD
Liebe Grüße
ProDielerNR(1)
Vielleicht bin ich zu dumm um es zu verstehen...
Jedenfalls hat es mich leider nicht wirklich weiter gebracht :?
Ich hoffe/Freue mich jedoch noch mehr Kommentare von euch Lesen zu können ^^
Scheint wohl so das außer dir niemand wirklich hilfst bereit ist oder eine Idee hätte Serraniel ^^"
Naja wie auch immer dann können wir auch das Thema schließen.
Closed Quest
Ich verstehe nicht so ganz was du willst. Willst du, dass die GUI responsiv bleibt wärend du rechenintensive Aufgaben durchführst oder allgemein nur die Performance deiner Applikation verbessern?
Ich benutze immer gerne Tasks/Threads für Aufgaben. Vielleicht hilft dir das schon weiter.
Normalerweise versucht man die Performance nur zu verbessern, wenn sie ein Problem darstellt. Dann ermittelt man über Metriken wo das Problem konkret ist und sucht nach einer Lösung. Allgemein nach Performance-Tricks zu fragen macht, meiner Meinung nach, hier nicht so viel Sinn.
Die Idee GUI und "Logik" voneinander zu trennen halte ich für clever wie Ludder231 schon sagte.
Du könntest dir auch überlegen auf eine andere Technologie als WinForms zu setzen, WPF, XNA (wurde leider eingestellt)...
Der Einstieg in WPF fällt recht schwer, zumindest war das bei mir so, lohnt sich aber, denn die GUIs sehen besser aus und sind auch "performanter".
So richtig Code Tricks für bessere Performance hab ich jetzt nicht kommt auf den konkreten Fall an, aber mit Graphics (System.Drawing und GDI+) zu arbeiten ist zum Beispiel schneller und besser als irgendwie sowas wie ein Farbverlauf über Bitmap.SetPixel(x,y,color) zu generieren.
Es ist am Ende alles eine Frage von klever verwendeten Algorithmen.
Stimmt nur so halb. Ja, XNA wird von Microsoft nicht mehr weiterentwickelt, allerdings gibt es seitdem , welches immer noch aktiv entwickelt wird und auch noch sehr viel XNA Code enthält. (Natürlich komplett )
ProDielerNR(1), wenn du da an einem Spiel arbeitest und das Zeichnen zu viel performance kostet, solltest du dir MonoGame ansehen (oder eine Engine wie z.B. Unity oder Xenko). Wenn das ein "normales Programm" ist, dann sind WindowsForms oder WPF normalerweise die bessere Entscheidung.
Eine Sache die Anfänger oftmals vergessen ist das locken von GUI controls beim updaten. Z.B. Listboxen updaten bei jeder Änderung. Wenn man jetzt viele änderungen machen will kann das echt lang dauern. Dafür kann man mit XYZ.BeginUpdate und EndUpdate einen block definieren in dem nicht neugezeichnet werden soll.
z.B:
Code:
ListBox1.BeginUpdate()
Try
ListBox1.Items.Clear()
For i As Integer = 1 To 100000
ListBox1.Items.Add(i.ToString)
Next
Finally
ListBox1.EndUpdate()
End Try
Probier den Code mal mit und mal ohne Begin/EndUpdate aus
Eine Sache die Anfänger oftmals vergessen ist das locken von GUI controls beim updaten. Z.B. Listboxen updaten bei jeder Änderung. Wenn man jetzt viele änderungen machen will kann das echt lang dauern. Dafür kann man mit XYZ.BeginUpdate und EndUpdate einen block definieren in dem nicht neugezeichnet werden soll.
z.B:
Code:
ListBox1.BeginUpdate()
Try
ListBox1.Items.Clear()
For i As Integer = 1 To 100000
ListBox1.Items.Add(i.ToString)
Next
Finally
ListBox1.EndUpdate()
End Try
Probier den Code mal mit und mal ohne Begin/EndUpdate aus
Das vergessen auch gerne Chefs mal, die sich vor ca. 3 Jahren aus der aktiven Entwicklung zurückgezogen haben, das kann ich dir sagen
FRAGE FRAGE FRAGE FRAGE FRAGE FRAGE FRAGE 03/21/2011 - Technical Support - 5 Replies Hi Leute,
Habe ein Problem mit meinen PC.
Habe Win 7 drauf will ihn formatieren also komlett reseten auf werkseinstellungen. Eine Recovery CD ist net dabei ( ist ein Notebook falls es wichtig ist xD ). Habe es mit dem format c probiert dann klick ich das an öffnet sich nur ein schwarzes kleines fenster das sich sofort wieder schließt. Wahrscheinlich falsche ruprik für solche probleme verschiebt mich einfach xDD.
Danke im Vorraus ;)
MFG
[Performance-Camtasia Studio]Wie verbessere ich die Performance? 11/13/2009 - Video Art - 4 Replies Hallo liebe Community und Mitglieder.
Wenn ich mit dem Aufnahmeprogramm „Camtasia Studio" ein Fenster aufnehme, z.B. das Client Fenster von Metin2, verschlechtert sich die Performance beim späteren angucken des Resultates.
D.h. es bleibt bei mehreren Hängern und es ist kein flüssiger Film.
Was habe ich versucht?
#Die Frames pro Sekunde zu erhöhen(bis 200 Frames pro Sekunde, aber dann gibt es auch schon bei der Aufnahme Hänger, bzw. beim produzieren)
#Das Video in der Bearbeitung zu...
Hallo Comunity 02/21/2008 - Say Hello - 1 Replies Wollt mal schnell meinen ersten Post loswerden und nett Hallo sagen :)