Collections og Memory managment
Jeg er en amatør der lige er begyndt at udforske VB.NET i dybden. I den forbindelse er jeg begyndt at bruge collections. En af mine venner, der ganske vist programmerer i VB 6.0 sagde at collections havde ret slemme memory leaks.Jeg prøvede derfor følgende :
Dim coll As New Collection()
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i, j As Integer
For i = 0 To 10000
coll.Add("ABC" & i.ToString("0"), i.ToString("0"))
Next
Button1.Text = "Done"
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i, j As Integer
For i = 0 To 10000
coll.Remove(i.ToString("0"))
Next
Button2.Text = "Done"
End Sub
Altså : tryk på knap 1 og der indsættes 10.000 tekster i en collection og tryk på knap2 og de fjernes igen. Jeg kan se i Windows task manager at hukommelses forbruget stiger efter tryk på knap1, men det falder ikke ved tryk på knap2 (stiger faktisk en lille bitte smule). Hvorfor det ???
Der er selvfølgelig sådan at jeg har tænkt mig at bruge collections i en mere avanceret sammenhæng, men hvis der er memory leaks så ved jeg sku ikke.
MVH
Thomas