【发布时间】:2016-01-21 22:59:39
【问题描述】:
我正在尝试将此 C++ 代码转换为 C#:
do{
if (Node->NextNode == NULL) WaitForSingleObject(pThis->_Event, INFINITE);
_critSect.Lock();
if (Node->NextNode == NULL && !bRunning )
{
_critSect.Unlock(); // can explicitly unlock here
break;
}
_critSect.Unlock();
}while (Node->NextNode == NULL);
在 C++ 中,我可以显式解锁线程,但 C# 只有一个括号。如何在破解前在下面的代码中添加“解锁”功能?
do{
if (Node->NextNode == null) DataQueueEvent.WaitOne();
lock (thisLock)
{
if (Node->NextNode == null && !bRunning)
// need to unlock here!!!
break;
}
} while (Node->NextNode == null);
【问题讨论】:
标签: c# c++ multithreading