Thats a lot of good info, but where it ultimately got me is use the synclock function, which i tried with no luck at all.

VB Code:
  1. Public Class MainClass
  2.     Private Threads(256) As Threading.Thread
  3.     Private PingObjects(256) As PingClass
  4.     Private Sub MySub()
  5.         For I As Integer = 0 To 255
  6.             PingObjects(I) = New PingClass
  7.             Threads(I) = New Threading.Thread(AddressOf PingObjects(I).collect)
  8.             Threads(I).IsBackground = True
  9.             Threads(I).Start()
  10.         Next
  11.     End Sub
  12. End Class
  13. Public Class PingClass
  14.     Public Sub collect()
  15. 'Ping Ips on subnet
  16. 'if IP is valid
  17. form1.listbox1.items.add(IP) 'DOES NOT WRITE even with synclock block around it
  18.  
  19.     End Sub
  20. End Class

How can I get sync lock to work appropriately for this (I have looked over its articles and tried to duplicate their examples several ways with no luck...)