У меня есть статический класс таймера, который будет вызываться ЛЮБОЙ веб-страницей, чтобы рассчитать, как долго каждая страница должна быть построена.
Мой вопрос: безопасны ли статические классы? В моем примере одновременные пользователи вызывают проблемы с моим временем начала и остановки? например, разные потоки, переписывающие значения начала и остановки.
public static class Timer
{
private static DateTime _startTime;
private static DateTime _stopTime;
/// <summary>
/// Gets the amount of time taken in milliseconds
/// </summary>
/// <returns></returns>
public static decimal Duration()
{
TimeSpan duration = _stopTime - _startTime;
return duration.Milliseconds;
}
public static void Start()
{
_startTime = DateTime.Now;
}
public static void Stop()
{
_stopTime = DateTime.Now;
}
}
Если этот класс нестационарный?
(Этот класс вызывается из главной страницы asp.net.)