¿Son seguros los métodos estáticos?

Tengo una clase de temporizador estático que será llamada por CUALQUIER página web para calcular cuánto tiempo ha tardado en construirse cada página.

Mi pregunta es si son seguras las clases estáticas? En mi ejemplo, ¿los usuarios simultáneos causarán un problema con mis tiempos de inicio y finalización? por ejemplo, un hilo diferente sobrescribiendo mis valores de inicio y parada.

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;
    }
}

¿Debería esta clase ser una clase no estática?

(Esta clase será llamada desde la página maestra de asp.net).

Respuestas a la pregunta(4)

Su respuesta a la pregunta