本文整理汇总了C++中SharedMemoryProcessDataHeader::DecRefCount方法的典型用法代码示例。如果您正苦于以下问题:C++ SharedMemoryProcessDataHeader::DecRefCount方法的具体用法?C++ SharedMemoryProcessDataHeader::DecRefCount怎么用?C++ SharedMemoryProcessDataHeader::DecRefCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SharedMemoryProcessDataHeader
的用法示例。
在下文中一共展示了SharedMemoryProcessDataHeader::DecRefCount方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: unlink
~AutoCleanup()
{
#if !NAMED_MUTEX_USE_PTHREAD_MUTEX
if (!m_cancel)
{
if (m_lockFileDescriptor != -1)
{
SharedMemoryHelpers::CloseFile(m_lockFileDescriptor);
}
if (m_createdLockFile)
{
_ASSERTE(m_lockFilePath != nullptr);
unlink(m_lockFilePath);
}
if (m_sessionDirectoryPathCharCount != 0)
{
_ASSERTE(m_lockFilePath != nullptr);
m_lockFilePath[m_sessionDirectoryPathCharCount] = '\0';
rmdir(m_lockFilePath);
}
}
#endif // !NAMED_MUTEX_USE_PTHREAD_MUTEX
if (m_acquiredCreationDeletionFileLock)
{
SharedMemoryManager::ReleaseCreationDeletionFileLock();
}
if (!m_cancel && m_processDataHeader != nullptr)
{
_ASSERTE(m_acquiredCreationDeletionProcessLock);
m_processDataHeader->DecRefCount();
}
if (m_acquiredCreationDeletionProcessLock)
{
SharedMemoryManager::ReleaseCreationDeletionProcessLock();
}
}
示例2: PalObject_Close
void SharedMemoryProcessDataHeader::PalObject_Close(
CPalThread *thread,
IPalObject *object,
bool isShuttingDown,
bool cleanUpPalSharedState)
{
// This function's signature matches OBJECTCLEANUPROUTINE
_ASSERTE(thread != nullptr);
_ASSERTE(object != nullptr);
_ASSERTE(object->GetObjectType()->GetId() == otiNamedMutex);
_ASSERTE(object->GetObjectType()->GetImmutableDataSize() == sizeof(SharedMemoryProcessDataHeader *));
SharedMemoryProcessDataHeader *processDataHeader = PalObject_GetProcessDataHeader(object);
if (processDataHeader == nullptr)
{
// The object was created, but an error must have occurred before the process data was initialized
return;
}
SharedMemoryManager::AcquireCreationDeletionProcessLock();
processDataHeader->DecRefCount();
SharedMemoryManager::ReleaseCreationDeletionProcessLock();
}