3 messaggi dal 06 aprile 2007
ciao a tutti,
qualcuno saprebbe tradurmi in vb.net questa implementazione semplificata in c# del parallel.for delle parallel extension al .net?

questo è il riferimento
http://blogs.msdn.com/pfxteam/archive/2008/03/12/8179013.aspx

grazie

static void ParallelFor(int fromInclusive, int toExclusive, Action<int> body)
{
int index = fromInclusive;
Task.Create(delegate
{
int i;
while ((i = Interlocked.Increment(ref index) - 1) < toExclusive)

{
body(i);
}
}, TaskCreationOptions.SelfReplicating).Wait();

}
176 messaggi dal 04 giugno 2007
Contributi | Blog
Eccolo:

Private Shared Sub ParallelFor(ByVal fromInclusive As Integer, ByVal toExclusive As Integer, ByVal body As Action(Of Integer)) 
    Dim index As Integer = fromInclusive 
        
    Task.Create(AddressOf ConvertedAnonymousMethod1, TaskCreationOptions.SelfReplicating).Wait() 
    
End Sub 

3 messaggi dal 06 aprile 2007
grazie AlessC-MSFT

ma i traduttori automatici non fanno un gran lavoro in questo caso
ed io non ho le conoscenze sufficienti per completare la traduzione.

cordialmente

Federico
176 messaggi dal 04 giugno 2007
Contributi | Blog
Mai postare dopo l'1:30 AM...

Quello che manca è la traduzione da delegate anonimo a delegate esplicito.

Take 2 (caveat: potrebbe esserci qualche errorino - scritto prima del primo caffé):

Delegate Sub TaskDelegate(ByRef index As Integer, ByVal toExclusive As Integer, ByVal body As Action(Of Integer))

Private Shared Sub ParallelFor(ByVal fromInclusive As Integer, ByVal toExclusive As Integer, ByVal body As Action(Of Integer)) 
   Dim index As Integer = fromInclusive 
   Dim MyDelegate As New TaskDelegate(<thisClassName>.DoWork)

   Task.Create(MyDelegate(index, toExclusive, body),_
               TaskCreationOptions.SelfReplicating).Wait() 

End Sub 

Private Shared Sub DoWork(ByRef index As Integer, ByVal toExclusive As Integer, ByVal body As Action(Of Integer))
    Dim i As Integer 
    While (i = Interlocked.Increment(index) - 1) < toExclusive 
        body(i) 
    End While 
End Sub 
3 messaggi dal 06 aprile 2007
grazie davvero

ci lavoro un po' su e ti faccio sapere

federico

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.