Я запускаю Анализ кода и получаю это сообщение:
CA1822: Microsoft.Performance: параметр 'this' (или 'Me' в Visual Basic) для CreateIntervalString (TimeSpan) 'никогда не бываетиспользуемый.Пометьте элемент как статический (или Shared в Visual Basic) или используйте «this» / «Me» в теле метода или, по крайней мере, один метод доступа к свойству, если необходимо.
Мой код:
private string CreateIntervalString(TimeSpan timeSpan)
{
return timeSpan.ToString();
}
, как я понял, поскольку функция CreateIntervalString
не использует членов класса и использует только входные данные timeSpan, VisualStudio рекомендует пометить его как статический.
MyВопросы:
- Почему , когда я отмечаю его как статическое, производительность улучшается?
- Моя функция является частью библиотеки, которая должна быть поточно-ориентированной,помечать как статические методы как это предотвратить?
- У меня есть дополнительные закрытые функции, которые используют только свои входные данные и не используют другие члены класса, но я не получаю ту же ошибку для них.
Спасибо большое!
Примеры:
следующий метод выдает ошибку:
private string CreateIntervalString(TimeSpan timeSpan)
{
return timeSpan.ToString();
}
, а следующее:
private DateTime ParseDateString(string dateTimeString)
{
// the years,monthe,days,hours,minutes and secondes found by the dateTimeString input
return new DateTime(years, months, days, hours, minutes, secondes);
}