var $=jQuery.noConflict(); $(document).ready(function(){ // jQuery code is in here });
Прислушаться к ответам Ашвани Панвара и Циссо: https://stackoverflow.com/a/29341144/3010027
Сделайте локальную копию i
:
for (int i = 0; i < nics.Count; i++)
{
int j = i;
rs[i] = new RollingSeries(monitor, new RollingSeries.NextValueDelegate(delegate()
{
return GetNetworkUtilization(nics[j]);
}));
}
Используйте локальную копию, чтобы получить другой значение на итерацию
for (int i = 0; i < nics.Count; i++)
{
int localI = i;
rs[i] = new RollingSeries(monitor, new RollingSeries.NextValueDelegate(delegate()
{
return GetNetworkUtilization(nics[localI]);
}));
}
Поместите int j = i
в свой цикл и обратитесь к j
в лямбда-выражении.
Если вам интересно, почему это происходит , вот запись в блоге MSDN, содержащая подробное техническое объяснение: Закрытие переменной цикла считается вредным