Scenario: Un compito asincrona in un ciclo esegue un metodo che contiene argomenti che cambiano come il programma continua:Passare argomenti con la modifica dei valori in Attività - Comportamento?
while(this._variable < 100)
{
this._variable++;
var aTask = Task.Factory.StartNew(() =>
{
aList.add(this._variable);
update(this._savePoint);
});
}
Se il ciclo corre più veloce rispetto ai completare le attività, sarà la lista aggiungere il valore corrente della variabile o è la variabile salvata localmente e il valore originale aggiunto?
Controllare questo fuori da Jon Skeet: http://csharpindepth.com/Articles/Chapter5/Closures.aspx –
+1 domanda eccellente! – nawfal