Michaelov, Itzik
2008-05-04 07:24:17 UTC
I'm using VB 6.0 SP6
why in second case memory release very slowly
Case 1: (execution time 2 seconds)
Dim mcol As New Collection
Dim k As Collection
For lCount = 1 To 120000
Set k = New Collection
mcol.Add k
Next
lCount = mcol.Count
For lIndex = 1 To lCount
mcol.Remove 1
Next lIndex
Set mcol = Nothing
Case 2: (execution time 30 seconds)
Dim mcol As New Collection
Dim k As Collection
For lCount = 1 To 120000
Set k = New Collection
mcol.Add k
Next
lCount = mcol.Count
For lIndex = lCount To 1 Step -1
mcol.Remove lIndex
Next lIndex
Set mcol = Nothing
Thanks
why in second case memory release very slowly
Case 1: (execution time 2 seconds)
Dim mcol As New Collection
Dim k As Collection
For lCount = 1 To 120000
Set k = New Collection
mcol.Add k
Next
lCount = mcol.Count
For lIndex = 1 To lCount
mcol.Remove 1
Next lIndex
Set mcol = Nothing
Case 2: (execution time 30 seconds)
Dim mcol As New Collection
Dim k As Collection
For lCount = 1 To 120000
Set k = New Collection
mcol.Add k
Next
lCount = mcol.Count
For lIndex = lCount To 1 Step -1
mcol.Remove lIndex
Next lIndex
Set mcol = Nothing
Thanks