Creo que despues de años, encontre hacer lo que busco
Miren lo que tengo:
Imports System.Threading
Imports System.Net
Public Class Picdex
#Region "WebClients"
Dim _w1 As New WebClient
Dim _w2 As New WebClient
Dim _hilo1 As Thread = New Thread(AddressOf TrabajoW1)
Dim _hilo2 As Thread = New Thread(AddressOf TrabajoW2)
#End Region
Private Sub Picdex_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
AddHandler _w1.DownloadStringCompleted, AddressOf _hilo1.Start
AddHandler _w2.DownloadStringCompleted, AddressOf _hilo2.Start
End Sub
Private Sub Comenzar(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
_w1.DownloadStringAsync(New Uri("http://www.brodasoft.com.ar/Standart/index.html"))
_w2.DownloadStringAsync(New Uri("http://www.brodasoft.com.ar/Standart/VIDay.html"))
End Sub
#Region "Trabajos de W1"
Private Sub TrabajoW1()
MsgBox("TrabajoW1 Listo")
MsgBox("TrabajoW1 Fin")
End Sub
Private Sub TrabajoW2()
MsgBox("TrabajoW2 Listo")
MsgBox("TrabajoW2 Fin")
End Sub
#End Region
End Class
Se supone que este codigo le dará START al hilo correspondiente al webclient...
El problema, obviamente, es que no ahorro codigo.. porque tengo 1 metodo por cada hilo.. pero yo busco multiprocesamiento simetrico y descargas paralelas.. nada mas...
Pensé en hacer algo así yo:
crear los 2 webclients, y ejecutar siempre el mismo metodo creando un hilo por cada evento que se produzco y darle por parametro el webclient que produjo el evento.. pero.. para ésto, tendria que hacer algo así:
AddHandler _w1.DownloadStringCompleted, AddressOf (y aqui crear un hilo nuevo y mandar por parametros (_w1))
Pero.. en el addessOf no se pueden poner parametros.. :/
O sea.. no encuentro manera de ejecutar un hilo al producirce un evento, y que éste hilo tenga por parametros el webclient que se ejecutó.. No encuentro manera de establecer una buena sincronizacion..
Porque si hago:
AddHandler _w1.DownloadStringCompleted, AddressOf METODOX
y METODOX es un metodo que crea un hilo que manda por parametros a _w1..
Si 2 eventos se producen casi en el mismo instante.. no alcanza a crear el hilo el 1º evento que se produjo, porque el 2º es como si lo ELIMINARA.. como si cortara automaticamente el 1º evento antes de terminar su operacion de crear el 1º hilo