Обьект доступный только с потока в котором создан - 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!");
//...
}
}