Как работает статический конструктор?

namespace MyNameSpace
{
    static class MyClass
    {
        static MyClass()
        {
            //Authentication process.. User needs to enter password
        }

        public static void MyMethod()
        {
            //Depends on successful completion of constructor
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            MyClass.MyMethod();
        }
    }
}

Вот последовательность, которую я предполагал

  1. Начало статического конструктора
  2. Конец статический конструктор
  3. Начало основного
  4. Начало MyMethod
  5. Конец основного

Теперь в любом сценарии, если 4 начнутся раньше 2, я облажался. Возможно ли это?

80
задан Peter Mortensen 22 February 2012 в 19:18
поделиться