コード例 #1
0
void ServerThreadContext::Release()
{
    InterlockedExchangeSubtract(&m_refCount, (uint)1);
    if (m_isClosed && m_refCount == 0)
    {
        HeapDelete(this);
    }
}
コード例 #2
0
void
ServerScriptContext::Release()
{
    InterlockedExchangeSubtract(&m_refCount, 1u);
    if (m_isClosed && m_refCount == 0)
    {
        // Not freeing here, we'll expect explicit ServerCleanupScriptContext() call to do the free
        // otherwise after free, the CodeGen call can still get same scriptContext if there's another 
        // ServerInitializeScriptContext call
    }
}
コード例 #3
0
void ProcessContext::Release()
{
    InterlockedExchangeSubtract(&this->refCount, 1);
}
コード例 #4
0
void
ServerScriptContext::EndJIT()
{
    InterlockedExchangeSubtract(&m_activeJITCount, 1);
}