@VileMan

С# почему возникает ошибка «вызванный объект был отключен от клиентов»?

Доброго времени суток!
Изучая методичку по основам операционных систем, наткнулся на проблему, которая возникает при использовании операторов lock; monitor.enter()..., ; и т.п.
Конкретнее
пикча
59da1fde74321871344349.png

Долго копался в поисках ответа ( сам новичок и додумать эту проблему не хватает опыта )
Код прикладываю...
source
class Program
    {
        static int Runs = 0;
        static object block = new object();
        static void Main()
        {
            Thread t2 = new Thread(new ThreadStart(Method))
            {
                Name = "Thread 2"
            };
            Thread t3 = new Thread(new ThreadStart(Method))
            {
                Name = "Thread 3"
            };
            t2.Start();
            t3.Start();
            Console.ReadLine();
            

        }
        public static void Method()
        {
            try
            {
                Monitor.Enter(block);
                int Temp = Runs;
                Temp++;
                Console.WriteLine(Thread.CurrentThread.Name + " {0}", Temp);
                Thread.Sleep(1000);
                Runs = Temp;
            }
            finally
            {
                Monitor.Exit(block);
            }
        }
    }
  • Вопрос задан
  • 6869 просмотров
Решения вопроса 1
@kttotto
пофиг на чем писать
У меня Ваш код отработал нормально.
59da92579a59a700422397.png
Ищите проблему в студии, правах. Попробуйте студию запустить с правами админа.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы