Информация об изменениях

Сообщение Re: Регресс производительности при переходе с FW 3.5 SP1 на от 16.05.2020 17:06

Изменено 16.05.2020 17:09 rameel

Re[3]: [R#] Merge sequential checks and compilation error
Здравствуйте, 4058, Вы писали:

4>Интересно почему тогда string.Contains дает аналогичные результаты на 3.5 и 4+, может локале-ориентированный компаратор сильно "фонит":


Потому что string.Contains не использует локаль
.NET FW https://referencesource.microsoft.com/#mscorlib/system/string.cs,2172
.NET Core https://source.dot.net/#System.Private.CoreLib/String.Searching.cs,13

Remarks

This method performs an ordinal (case-sensitive and culture-insensitive) comparison.


public bool Contains( string value ) {
    return ( IndexOf(value, StringComparison.Ordinal) >=0 );
}


4>Также аналогичные результаты можно получить, если явно в качестве компаратора указать StringComparison.Ordinal:


Потому что не используется локаль
Re: Регресс производительности при переходе с FW 3.5 SP1 на
Здравствуйте, 4058, Вы писали:

4>Интересно почему тогда string.Contains дает аналогичные результаты на 3.5 и 4+, может локале-ориентированный компаратор сильно "фонит":


Потому что string.Contains не использует локаль
.NET FW https://referencesource.microsoft.com/#mscorlib/system/string.cs,2172
.NET Core https://source.dot.net/#System.Private.CoreLib/String.Searching.cs,13

Remarks

This method performs an ordinal (case-sensitive and culture-insensitive) comparison.


public bool Contains( string value ) {
    return ( IndexOf(value, StringComparison.Ordinal) >=0 );
}


4>Также аналогичные результаты можно получить, если явно в качестве компаратора указать StringComparison.Ordinal:


Потому что не используется локаль