您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ DeleteCriticalSection函数代码示例

51自学网 2021-06-01 20:26:30
  C++
这篇教程C++ DeleteCriticalSection函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中DeleteCriticalSection函数的典型用法代码示例。如果您正苦于以下问题:C++ DeleteCriticalSection函数的具体用法?C++ DeleteCriticalSection怎么用?C++ DeleteCriticalSection使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了DeleteCriticalSection函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: DeleteCriticalSection

CCritSection::~CCritSection(){	DeleteCriticalSection(&m_CS);}
开发者ID:ddavison,项目名称:Jaangle,代码行数:4,


示例2: Uninitialize

CNdasServiceDeviceEventHandler::~CNdasServiceDeviceEventHandler(){	Uninitialize();	DeleteCriticalSection(&m_DevNotifyMapSection);}
开发者ID:tigtigtig,项目名称:ndas4windows,代码行数:5,


示例3: pthread_mutex_destroy

int pthread_mutex_destroy(pthread_mutex_t *mutex){	DeleteCriticalSection((_pthread_mutex_t *) mutex);	return 0;}
开发者ID:Abyss116,项目名称:luaplus51-all,代码行数:5,


示例4: vlc_mutex_destroy

void vlc_mutex_destroy (vlc_mutex_t *p_mutex){    assert (p_mutex->dynamic);    DeleteCriticalSection (&p_mutex->mutex);}
开发者ID:BossKing,项目名称:vlc,代码行数:5,


示例5: DeleteCriticalSection

MutexCS::~MutexCS(){    DeleteCriticalSection(&m_criticalSection);}
开发者ID:Jonnyliu,项目名称:lochsemu,代码行数:4,


示例6: DECLINLINE

DECLINLINE(int) RTCritSectDelete(PCRITICAL_SECTION pCritSect){    DeleteCriticalSection(pCritSect);    return VINF_SUCCESS;}
开发者ID:svn2github,项目名称:virtualbox,代码行数:5,


示例7: wan

//.........这里部分代码省略.........		if ( SetBoolInBlob(hFilterBlob, OWNER_NPP, CATEGORY_CONFIG, TAG_INTERFACE_REALTIME_CAPTURE, TRUE) != NMERR_SUCCESS )	{		DestroyBlob( hFilterBlob);		goto error;	}	if ( SetBoolInBlob(hFilterBlob, OWNER_NPP, CATEGORY_LOCATION, TAG_RAS, TRUE) != NMERR_SUCCESS )	{		DestroyBlob( hFilterBlob);		goto error;	}	if ( GetNPPBlobTable(hFilterBlob, &pBlobTable) != NMERR_SUCCESS )	{		DestroyBlob( hFilterBlob);		goto error;	}	DestroyBlob (hFilterBlob);	if ( pBlobTable->dwNumBlobs == 0 || pBlobTable->dwNumBlobs > 1)	{		///fixme.....		for ( i = 0 ; i < pBlobTable->dwNumBlobs ; i++ )			DestroyBlob(pBlobTable->hBlobs[i]);				GlobalFree(pBlobTable);		goto error;	}	pWanAdapter->hCaptureBlob = pBlobTable->hBlobs[0];	GlobalFree(pBlobTable);	InitializeCriticalSection(&pWanAdapter->CriticalSection);	pWanAdapter->hReadEvent = CreateEvent(NULL, TRUE, FALSE, NULL);	if ( pWanAdapter->hReadEvent == NULL )		goto error;#ifdef HAVE_BUGGY_TME_SUPPORT	pWanAdapter->MemEx.buffer = (PUCHAR)GlobalAlloc(GPTR, DEFAULT_MEM_EX_SIZE);	if (pWanAdapter->MemEx.buffer == NULL)		goto error;		pWanAdapter->MemEx.size = DEFAULT_MEM_EX_SIZE;	pWanAdapter->Tme.active = TME_NONE_ACTIVE;#endif //HAVE_BUGGY_TME_SUPPORT	if (CreateNPPInterface(pWanAdapter->hCaptureBlob, IID_IRTC, (void**) &pWanAdapter->pIRTC) == NMERR_SUCCESS && pWanAdapter->pIRTC != NULL) 	{		//create OK		if (pWanAdapter->pIRTC->Connect(pWanAdapter->hCaptureBlob, NULL, WanPacketReceiverCallback, (LPVOID)pWanAdapter , NULL) == NMERR_SUCCESS)		{			//connect OK			if (pWanAdapter->pIRTC->Start() == NMERR_SUCCESS)			{				return pWanAdapter;			}			else			{				pWanAdapter->pIRTC->Disconnect();				pWanAdapter->pIRTC->Release();				goto error;			}		}		else		{			pWanAdapter->pIRTC->Release();			goto error;		}	}	else	{		goto error;	}	//awfully never reached//	return NULL;error:	if (pWanAdapter != NULL)	{		if (pWanAdapter->hReadEvent != NULL)			CloseHandle(pWanAdapter->hReadEvent);		DeleteCriticalSection(&pWanAdapter->CriticalSection);		if (pWanAdapter->hCaptureBlob)			DestroyBlob(pWanAdapter->hCaptureBlob);		GlobalFree(pWanAdapter);	}	CoUninitialize();		return NULL;}
开发者ID:OPEXGroup,项目名称:winpcap,代码行数:101,


示例8: DeleteCriticalSection

MutexImpl::~MutexImpl(){	DeleteCriticalSection(&_cs);}
开发者ID:Bing4Autodesk,项目名称:CEF3,代码行数:4,


示例9: DeleteCriticalSection

CriticalSection::~CriticalSection() noexcept        { DeleteCriticalSection ((CRITICAL_SECTION*) lock); }
开发者ID:Ixox,项目名称:preenfm2Controller,代码行数:1,


示例10: DeleteCriticalSection

CVideoProcessor::~CVideoProcessor(){	DeleteCriticalSection(&m_csLock);}
开发者ID:jscr93,项目名称:PDI2015B,代码行数:4,


示例11: DeleteCriticalSection

 _PPLXIMP critical_section_impl::~critical_section_impl() {     DeleteCriticalSection(reinterpret_cast<LPCRITICAL_SECTION>(&_M_impl)); }
开发者ID:EvanCui,项目名称:cpprestsdk,代码行数:4,


示例12: Clear

 ~AbortCookieManager() {     Clear();     DeleteCriticalSection(&cookieAccess); }
开发者ID:codepongo,项目名称:sumatrapdf,代码行数:4,


示例13: FreeData

Player::~Player(){	FreeData();	DeleteCriticalSection(&cs);}
开发者ID:BackupTheBerlios,项目名称:mgoodies-svn,代码行数:5,


示例14: CloseDevice

//关闭线程,释放资源CWavePlay::~CWavePlay(void){	CloseDevice();	DeleteCriticalSection(&_waveCriticalSection);}
开发者ID:mildrock,项目名称:Media,代码行数:6,


示例15: VisualCppMutexDestroy

static void VisualCppMutexDestroy(PlatformSpecificMutex mutex){	CRITICAL_SECTION *critical_section = (CRITICAL_SECTION*)mutex;	DeleteCriticalSection(critical_section);	delete critical_section;}
开发者ID:Andne,项目名称:cpputest,代码行数:6,


示例16: WaitForSingleObject

 ~PageRenderer() {     if (thread)         WaitForSingleObject(thread, INFINITE);     delete currBmp;     DeleteCriticalSection(&currAccess); }
开发者ID:RazvanB,项目名称:sumatrapdf,代码行数:6,


示例17: DeleteCriticalSection

 ~ase_fast_mutex() { /* DCHK */     DeleteCriticalSection(&cri); }
开发者ID:ahiguti,项目名称:ase,代码行数:3,


示例18: DeleteCriticalSection

CMsgContainerCAN::~CMsgContainerCAN(void){    DeleteCriticalSection(&m_sCritSecDataSync);    DeleteCriticalSection(&m_omCritSecFilter);}
开发者ID:Huigang610,项目名称:busmaster-1,代码行数:5,


示例19: DeleteCriticalSection

CClientNotificationSink::~CClientNotificationSink(){    DeleteCriticalSection( &m_printfCriticalSection );}
开发者ID:georgSquared,项目名称:WS-Discovery,代码行数:4,


示例20: amp_raw_condition_variable_init

int amp_raw_condition_variable_init(amp_condition_variable_t cond){    int retval = AMP_UNSUPPORTED;        assert(NULL != cond);        retval = InitializeCriticalSectionAndSpinCount(&cond->access_waiting_threads_count_critsec,                                                   AMP_RAW_MUTEX_WINTHREADS_CRITICAL_SECTION_DEFAULT_SPIN_COUNT | AMP_RAW_MUTEX_WINTHREADS_CRITICAL_SECTION_CREATE_IMMEDIATELY_ON_WIN2000);        if (FALSE == retval) {        DWORD const last_error = GetLastError();        /**         * TODO: @todo Differentiate between no-memory and other errors.         */        return AMP_ERROR;    }    retval = InitializeCriticalSectionAndSpinCount(&cond->wake_waiting_threads_critsec,                                                   AMP_RAW_MUTEX_WINTHREADS_CRITICAL_SECTION_DEFAULT_SPIN_COUNT | AMP_RAW_MUTEX_WINTHREADS_CRITICAL_SECTION_CREATE_IMMEDIATELY_ON_WIN2000);    if (FALSE  == retval) {        DWORD const last_error = GetLastError();        /**         * TODO: @todo Differentiate between no-memory and other errors.         */                DeleteCriticalSection(&cond->access_waiting_threads_count_critsec);                return AMP_ERROR;    }    /* Assuming that less threads exist than max possible semaphore count.     */    cond->waking_waiting_threads_count_control_sem = CreateSemaphore(NULL, /* No inheritance to child processes */                                                                     0, /* Initially no threads can pass */                                                                     LONG_MAX, /* Max semaphore count */                                                                     NULL); /* Only intra-process semaphore */        if (NULL == cond->waking_waiting_threads_count_control_sem) {        DWORD const last_error = GetLastError();        assert(ERROR_ALREADY_EXISTS != last_error);                DeleteCriticalSection(&cond->wake_waiting_threads_critsec);        DeleteCriticalSection(&cond->access_waiting_threads_count_critsec);                return AMP_ERROR;    }    cond->finished_waking_waiting_threads_event = CreateEvent(NULL, /* Default security and no inheritance to child processes */                                                              FALSE, /* No manual reset */                                                              0, /* Initially not signaled */                                                              NULL /* Not inter-process available */                                                              );        if (NULL == cond->finished_waking_waiting_threads_event) {        BOOL close_retval = FALSE;        DWORD const create_event_error = GetLastError();        assert(ERROR_ALREADY_EXISTS != create_event_error);                DeleteCriticalSection(&cond->wake_waiting_threads_critsec);        DeleteCriticalSection(&cond->access_waiting_threads_count_critsec);        close_retval = CloseHandle(&cond->waking_waiting_threads_count_control_sem);                if (FALSE == close_retval) {            DWORD const close_handle_error = GetLastError();            assert(ERROR_INVALID_HANDLE != close_handle_error);            assert(0);        }                /* I don't know the possible return values of GetLastError if event         * creation didn't work - just returning an error code.         */        return AMP_ERROR;    }            cond->waiting_thread_count = 0l;    cond->broadcast_in_progress = FALSE;            /* Preliminary tests that waiting_thread_count and broadcast_in_progress     * are correctly aligned to allow atomic access to them.     *     * TODO: @todo Re-enable alignment test assertions.     *     * TODO: @todo Check which alignment is needed on 32bit and 64bit systems     *             and on which platforms.     */    /* assert(0x0 == ((uintptr_t)(&cond->waiting_thread_count) & 0x3)); */    /* assert(0x0 ==((uintptr_t)(&cond->broadcast_in_progress) & 0x3)); */        return AMP_SUCCESS;}
开发者ID:GameClay,项目名称:FlightlessManicotti,代码行数:93,


示例21: TRI_DestroyCondition

void TRI_DestroyCondition(TRI_condition_t* cond) {  DeleteCriticalSection(&cond->_lockWaiters);}
开发者ID:JiangKevin,项目名称:arangodb,代码行数:3,


示例22: DeleteCriticalSection

Lock::~Lock(void){	DeleteCriticalSection(&_lock);}
开发者ID:ueverything,项目名称:mmo-resourse,代码行数:4,


示例23: opj_mutex_destroy

void opj_mutex_destroy(opj_mutex_t* mutex){    if( !mutex ) return;    DeleteCriticalSection( &(mutex->cs) );    opj_free( mutex );}
开发者ID:jingyu9575,项目名称:sumatrapdf,代码行数:6,


示例24: main

int __cdecl main(int argc, char **argv){    DWORD dwRet;    DWORD dwRet1;    bTestResult = FAIL;        if ((PAL_Initialize(argc,argv)) != 0)    {        return(bTestResult);    }    /*     * Create Critical Section Object     */    InitializeCriticalSection ( &CriticalSection );    EnterCriticalSection ( &CriticalSection );    hThread[0] = CreateThread(NULL,                              0,                              &ThreadTest1,                              (LPVOID) 0,                              CREATE_SUSPENDED,                              &dwThreadId[0]);    if (hThread[0] == NULL)    {        Trace("PALSUITE ERROR: CreateThread(%p, %d, %p, %p, %d, %p) call "             "failed./nGetLastError returned %d./n", NULL, 0, &ThreadTest1,             (LPVOID) 0, CREATE_SUSPENDED, &dwThreadId[0], GetLastError());        LeaveCriticalSection(&CriticalSection);        DeleteCriticalSection ( &CriticalSection );        Fail("");    }        hThread[1] = CreateThread(NULL,                              0,                              &ThreadTest2,                              (LPVOID) 0,                              CREATE_SUSPENDED,                              &dwThreadId[1]);    if (hThread[1] == NULL)    {        Trace("PALSUITE ERROR: CreateThread(%p, %d, %p, %p, %d, %p) call "             "failed./nGetLastError returned %d./n", NULL, 0, &ThreadTest2,             (LPVOID) 0, CREATE_SUSPENDED, &dwThreadId[1], GetLastError());        LeaveCriticalSection(&CriticalSection);        dwRet = ResumeThread(hThread[0]);        if (-1 == dwRet)        {            Trace("PALSUITE ERROR: ResumeThread(%p) call failed./n"                  "GetLastError returned '%d'./n", hThread[0],             GetLastError());    }        dwRet = WaitForSingleObject(hThread[0], 10000);        if (WAIT_OBJECT_0 == dwRet)        {            Trace("PALSUITE ERROR: WaitForSingleObject(%p, %d) call "                  "failed.  '%d' was returned instead of the expected '%d'./n"                  "GetLastError returned '%d'./n", hThread[0], 10000, dwRet,                   WAIT_OBJECT_0, GetLastError());        }        if (0 == CloseHandle(hThread[0]))        {            Trace("PALSUITE NOTIFICATION: CloseHandle(%p) call failed./n"                  "GetLastError returned %d.  Not failing tests./n",                   hThread[0], GetLastError());        }        DeleteCriticalSection(&CriticalSection);        Fail("");    }    /*      * Set other thread priorities to be higher than ours & Sleep to ensure      * we give up the processor.      */    dwRet = (DWORD) SetThreadPriority(hThread[0],                                       THREAD_PRIORITY_ABOVE_NORMAL);    if (0 == dwRet)    {        Trace("PALSUITE ERROR: SetThreadPriority(%p, %d) call failed./n"              "GetLastError returned %d", hThread[0],               THREAD_PRIORITY_ABOVE_NORMAL, GetLastError());    }        dwRet = (DWORD) SetThreadPriority(hThread[1],                                       THREAD_PRIORITY_ABOVE_NORMAL);    if (0 == dwRet)    {        Trace("PALSUITE ERROR: SetThreadPriority(%p, %d) call failed./n"              "GetLastError returned %d", hThread[1],               THREAD_PRIORITY_ABOVE_NORMAL, GetLastError());    }    dwRet = ResumeThread(hThread[0]);    if (-1 == dwRet)//.........这里部分代码省略.........
开发者ID:0-wiz-0,项目名称:coreclr,代码行数:101,


示例25: CloseUart

CUartCtrl::~CUartCtrl(){	CloseUart();	DeleteCriticalSection(&m_csCom);}
开发者ID:YC-YC,项目名称:App,代码行数:5,


示例26: DeleteCriticalSection

bool CLogger::lock_deinit(){    DeleteCriticalSection(&m_crit);    return true;}
开发者ID:lidongqiang,项目名称:PCBATool,代码行数:5,


示例27: ssl_lock_dyn_destroy_callback

void ssl_lock_dyn_destroy_callback(CRYPTO_dynlock_value* l, const char *file, int line) {    DeleteCriticalSection(&l->lock);    free(l);}
开发者ID:xxxxnnxxxx,项目名称:HttpProxy,代码行数:4,


示例28: DeleteCriticalSection

Mutex::~Mutex(){    DeleteCriticalSection(&m_mutex.m_internalMutex);}
开发者ID:sfarbotka,项目名称:py3webkit,代码行数:4,


示例29: DeleteCriticalSection

Mutex::~Mutex(){	// http://msdn.microsoft.com/en-us/library/ms686360(VS.85).aspx	DeleteCriticalSection( &m_kCriticalSection );}
开发者ID:adamlwgriffiths,项目名称:Shock,代码行数:5,



注:本文中的DeleteCriticalSection函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ DeleteDC函数代码示例
C++ DeleteArray函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。