Hurrah - lass ich mir natürlich nicht entgehen!petaod schrieb:
typischer Streitfall...
Also was du ansprichst wäre eine Mikro-Optimierung: Du erkaufst dir einen (insbesondere hier) minimalen Geschwindigkeits-Vorteil, um den Preis etwas höherer Komplexität.
Komplexität ist nun fast immer die letztendliche Ursache von Programm-Fehlern, und jedes bischen Komplexität summiert sich auf.
Also da haben wir einen kleinen Cost, und mach sowas 5 mal im Form, dann wird die zunehmende Unleserlichkeit des Codes schon deutlich wahrnehmbar.
Nun zur Win-Seite:
Path.GetTempPath ist wirklich sehr schnell, und steht hier in zeitlicher Abfolge mit dem vermutlich um 1000000000% langsameren Download.
Damit ist völlig ausgeschlossen, dass der Geschwindigkeitsgewinn von 0,00000001% sich jemals irgendwie bemerkbar macht.
Wir haben also keinen, absolut keinen Win.
Womit die Kosten-Nutzen-Frage ich finde eindeutig entschieden ist
Wahrscheinlich wäre sogar besser, den WebClient auch von den Class-Vars nach lokal zu verlegen
VB.NET-Quellcode
- Dim url As String = ""
- Dim i As Integer = 0
- Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
- Using webclient As New Net.WebClient
- i += 1
- Dim path = IO.Path.Combine(IO.Path.GetTempPath, "tmpimage" & i & ".bmp")
- webclient.DownloadFile(url, path)
- End Using
- End Sub
Rules Of Optimization
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()