我仍然熟悉多线程的锁定。
Monitor::Enter(obj);
try
{
///do work
}
finally
{
Monitor::Exit(obj);
}
应该在哪里obj
声明什么?我在 Locator 类的构造函数中声明它,
Locator()
{
System::Object^ obj = gcnew System::Object();
}
obj
并在类的私有变量中声明
private:
System::Object^ obj;
但它在Monitor::Enter(obj)
说之后给了我一个错误
Value cannot be null.
任何提示表示赞赏。