Обьект доступный только с потока в котором создан - C#

Узнай цену своей работы

Формулировка задачи:

Интересует как делается например в WinForms, Unity3d - что например к Win форме можно обращаться только с интерфейсного потока, использовать api unity3d - только с основного потока. Как реализуется чтобы обращение к обьекту можно было сделать только из потока в котором создан обьект? Интересует - эта возможность реализована на уровне .Net или нужно при написании своей библиотеки встраивать проверки, в котором потоке идет создание, вызов методов обьекта и уже там генерировать ексепшен? Спасибо.

Решение задачи: «Обьект доступный только с потока в котором создан»

textual
Листинг программы
    class Foo
    {
        private Thread myThread;
 
        public Foo()
        {
            myThread = Thread.CurrentThread;
        }
 
        public void Method()
        {
            //check thread
            if (myThread != Thread.CurrentThread)
                throw new Exception("Crossthread access is denied!");
            //...
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.667 из 5
Похожие ответы