Re: Верно ли написан тест скорости выполнения
От: Igorxz  
Дата: 06.02.20 10:04
Оценка: +1
Здравствуйте, Passerby, Вы писали:

P>Необходимо пополнять какую-нибудь коллекцию парами string, int и после заполнения сортировать по убыванию int. Попробовал разные варианты в прилагаемом коде. Только сомнения в том, верно ли написал тест: код содержит OrderByDescending(pair => pair.Value, не будет ли отложенного выполнения уже после вывода результата?


1) вот это по вашему вы сортируете (по убыванию int)?:
...
ardicsort[i] = ardic[i].OrderByDescending(pair => pair.Value).ToDictionary(pair => pair.Key, pair => pair.Value);
...

словарь (тот кокторый Dictionary< K, T >) по природе своей _не_ сортирован.
все совпадения случайны.


2) чем бы там ни было CaseInsensitiveComparer, но вот этот код нехило нагрузит GC первым мусорным поколением:
public class myReverserClass : IComparer
{
   int IComparer.Compare(Object x, Object y)
   {
      return ((new CaseInsensitiveComparer()).Compare(x,y ));
   }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.