这篇教程C++ AnscAcquireLock函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中AnscAcquireLock函数的典型用法代码示例。如果您正苦于以下问题:C++ AnscAcquireLock函数的具体用法?C++ AnscAcquireLock怎么用?C++ AnscAcquireLock使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了AnscAcquireLock函数的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: AnscAcquireLockANSC_STATUSBbhmDiagipSetStopTime ( ANSC_HANDLE hThisObject, USHORT SeqNumber, ULONG PktSize, UCHAR TTL, ULONG StopTime ){ ANSC_STATUS returnStatus = ANSC_STATUS_FAILURE; PBBHM_DIAG_IP_PING_OBJECT pMyObject = (PBBHM_DIAG_IP_PING_OBJECT)hThisObject; PBBHM_IP_PING_PROPERTY pProperty = (PBBHM_IP_PING_PROPERTY )&pMyObject->Property; PBBHM_IP_PING_TDO_OBJECT pStateTimer = (PBBHM_IP_PING_TDO_OBJECT )pMyObject->hStateTimer; PBBHM_IP_PING_SINK_OBJECT pSink = (PBBHM_IP_PING_SINK_OBJECT )pMyObject->hSinkObject; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; PBBHM_IP_PING_ECHO_ENTRY pEchoEntry = NULL; PBBHM_IP_PING_ECHO_ENTRY pMEchoEntry = NULL; ULONG ulHashIndex = SeqNumber % MAX_ECHO_TABLE_SIZE; AnscAcquireLock(&pMyObject->EchoTableLock); pSLinkEntry = AnscSListGetFirstEntry(&pMyObject->EchoTable[ulHashIndex]); while ( pSLinkEntry ) { pEchoEntry = (PBBHM_IP_PING_ECHO_ENTRY)ACCESS_BBHM_IP_PING_ECHO_ENTRY(pSLinkEntry); pSLinkEntry = AnscSListGetNextEntry(pSLinkEntry); if ( pEchoEntry->SeqId == SeqNumber ) { if ( (StopTime - pEchoEntry->StartTime <= pProperty->TimeOut) && (pEchoEntry->StopTime == 0) ) { returnStatus = ANSC_STATUS_SUCCESS; pEchoEntry->StopTime = StopTime; pEchoEntry->TTL = TTL; pEchoEntry->PktSize = PktSize; pEchoEntry->ICMPType = 0; pMEchoEntry = (PBBHM_IP_PING_ECHO_ENTRY)AnscAllocateMemory(sizeof(BBHM_IP_PING_ECHO_ENTRY)); if ( pMEchoEntry ) { pMEchoEntry->StartTime = pEchoEntry->StartTime; pMEchoEntry->StopTime = pEchoEntry->StopTime; pMEchoEntry->SeqId = pEchoEntry->SeqId; pMEchoEntry->PktSize = pEchoEntry->PktSize; pMEchoEntry->TTL = pEchoEntry->TTL; pMEchoEntry->ICMPType = pEchoEntry->ICMPType; AnscAcquireLock(&pMyObject->MiddleResultLock); AnscSListPushEntryAtBack(&pMyObject->MiddleResult, &pMEchoEntry->Linkage); AnscReleaseLock(&pMyObject->MiddleResultLock); } } break; } } AnscReleaseLock(&pMyObject->EchoTableLock); return returnStatus;}
开发者ID:davekimble,项目名称:TestAndDiagnostic,代码行数:60,
示例2: AnscAcquireLockANSC_STATUSHttpSpoDestroyPsoPool ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_SIMPLE_PROXY_OBJECT pMyObject = (PHTTP_SIMPLE_PROXY_OBJECT )hThisObject; PHTTP_SIMPLE_PROXY_PROPERTY pProperty = (PHTTP_SIMPLE_PROXY_PROPERTY)&pMyObject->Property; PHTTP_PROXY_SESSION_OBJECT pSession = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; AnscAcquireLock(&pMyObject->PsoSListLock); pSLinkEntry = AnscSListPopEntry(&pMyObject->PsoSList); while ( pSLinkEntry ) { pSession = ACCESS_HTTP_PROXY_SESSION_OBJECT(pSLinkEntry); pSLinkEntry = AnscSListPopEntry(&pMyObject->PsoSList); pSession->Remove((ANSC_HANDLE)pSession); } AnscReleaseLock(&pMyObject->PsoSListLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:28,
示例3: AnscAcquireLockANSC_STATUSHttpBmoDelAllHfos ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_BASIC_MESSAGE_OBJECT pMyObject = (PHTTP_BASIC_MESSAGE_OBJECT)hThisObject; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_HEADER_FIELD pHttpHfo = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; ULONG i = 0; AnscAcquireLock(&pMyObject->HfoTableLock); for ( i = 0; i < HTTP_BMO_HFO_TABLE_SIZE; i++ ) { pSLinkEntry = AnscQueuePopEntry(&pMyObject->HfoTable[i]); while ( pSLinkEntry ) { pHttpHfo = ACCESS_HTTP_HEADER_FIELD(pSLinkEntry); pSLinkEntry = AnscQueuePopEntry(&pMyObject->HfoTable[i]); AnscFreeMemory(pHttpHfo); } } AnscReleaseLock(&pMyObject->HfoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:32,
示例4: AnscFreeMemoryANSC_STATUSDslhWmpdoReset( ANSC_HANDLE hThisObject){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PDSLH_WMP_DATABASE_OBJECT pMyObject = (PDSLH_WMP_DATABASE_OBJECT )hThisObject; PDSLH_WMP_DATABASE_PROPERTY pProperty = (PDSLH_WMP_DATABASE_PROPERTY)&pMyObject->Property; PDSLH_OBJ_RECORD_OBJECT pRootObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hRootObjRecord; PDSLH_OBJ_ENTITY_OBJECT pRootObjEntity = (PDSLH_OBJ_ENTITY_OBJECT )pMyObject->hRootObjEntity; PDSLH_WMPDO_MONITOR_PARAM pMonitorParam = (PDSLH_WMPDO_MONITOR_PARAM )NULL; PSINGLE_LINK_ENTRY pSLinkEntry = (PSINGLE_LINK_ENTRY )NULL; pMyObject->ResetObjVarArray(hThisObject); if ( pMyObject->LockedEntity ) { AnscFreeMemory(pMyObject->LockedEntity); pMyObject->LockedEntity = NULL; } if ( pMyObject->pRootObjName) { AnscFreeMemory(pMyObject->pRootObjName); pMyObject->pRootObjName = NULL; } if ( pRootObjRecord ) { pRootObjRecord->Remove((ANSC_HANDLE)pRootObjRecord); pMyObject->hRootObjRecord = (ANSC_HANDLE)NULL; } if ( pRootObjEntity ) { pRootObjEntity->Remove((ANSC_HANDLE)pRootObjEntity); pMyObject->hRootObjEntity = (ANSC_HANDLE)NULL; } AnscAcquireLock(&pMyObject->MpoQueueLock); pSLinkEntry = AnscQueuePopEntry(&pMyObject->MpoQueue); while ( pSLinkEntry ) { pMonitorParam = ACCESS_DSLH_WMPDO_MONITOR_PARAM(pSLinkEntry); pSLinkEntry = AnscQueuePopEntry(&pMyObject->MpoQueue); DslhWmpdoFreeMonitorParam(pMonitorParam); } AnscReleaseLock(&pMyObject->MpoQueueLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:60,
示例5: AnscAcquireLockANSC_STATUSHttpAuthcoClearAllAuthInfo ( ANSC_HANDLE hThisObject ){ PHTTP_AUTH_CLIENT_OBJECT pMyObject = (PHTTP_AUTH_CLIENT_OBJECT)hThisObject; PHTTP_AUTHO_INFO pAuthInfo = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; AnscAcquireLock(&pMyObject->AuthInfoListLock); /* remove auth info */ pSLinkEntry = AnscSListPopEntry(&pMyObject->AuthInfoList); while (pSLinkEntry) { pAuthInfo = ACCESS_HTTP_AUTHO_INFO_OBJECT(pSLinkEntry); pSLinkEntry = AnscSListPopEntry(&pMyObject->AuthInfoList); HttpAuthInfoRemove(pAuthInfo); } AnscReleaseLock(&pMyObject->AuthInfoListLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:26,
示例6: AnscAcquireLockBOOLEANBbhmDiageoCheckCanStart ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBBHM_DIAG_EXEC_OBJECT pMyObject = (PBBHM_DIAG_EXEC_OBJECT)hThisObject; PDSLH_DIAG_INFO_BASE pDiagInfo = (PDSLH_DIAG_INFO_BASE )pMyObject->hDslhDiagInfo; BOOLEAN bCanStart = FALSE; AnscAcquireLock(&pMyObject->AccessLock); if ( pMyObject->bResultQueryRunning ) { bCanStart = FALSE; } else { bCanStart = TRUE; } AnscReleaseLock(&pMyObject->AccessLock); return bCanStart;}
开发者ID:davekimble,项目名称:TestAndDiagnostic,代码行数:26,
示例7: AnscAcquireLockANSC_STATUSBmc2EnvcoDelAllCommandProperties ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBMC2_ENV_CONTROLLER_OBJECT pMyObject = (PBMC2_ENV_CONTROLLER_OBJECT )hThisObject; PBMC2_ENV_CONTROLLER_PROPERTY pProperty = (PBMC2_ENV_CONTROLLER_PROPERTY)&pMyObject->Property; PBMC2_COMMAND_PROPERTY pBmc2CommandProperty = (PBMC2_COMMAND_PROPERTY )NULL; PSINGLE_LINK_ENTRY pSLinkEntry = (PSINGLE_LINK_ENTRY )NULL; ULONG i = 0; AnscAcquireLock(&pMyObject->CompoTableLock); for ( i = 0; i < BMC2_ENVCO_COMPO_TABLE_SIZE; i++ ) { pSLinkEntry = AnscQueuePopEntry(&pMyObject->CompoTable[i]); while ( pSLinkEntry ) { pBmc2CommandProperty = ACCESS_BMC2_COMMAND_PROPERTY(pSLinkEntry); pSLinkEntry = AnscQueuePopEntry(&pMyObject->CompoTable[i]); Bmc2FreeCommandProperty(pBmc2CommandProperty); } } AnscReleaseLock(&pMyObject->CompoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:32,
示例8: AnscAcquireLockANSC_STATUSPsmSysroSysRamEnableFileSync ( ANSC_HANDLE hThisObject, BOOL bEnabled ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PPSM_SYS_REGISTRY_OBJECT pMyObject = (PPSM_SYS_REGISTRY_OBJECT )hThisObject; PPSM_SYS_REGISTRY_PROPERTY pProperty = (PPSM_SYS_REGISTRY_PROPERTY)&pMyObject->Property; PSYS_INFO_REPOSITORY_OBJECT pSysInfoRepository = (PSYS_INFO_REPOSITORY_OBJECT)pMyObject->hSysInfoRepository; PSYS_IRA_INTERFACE pIraIf = (PSYS_IRA_INTERFACE )pSysInfoRepository->GetIraIf((ANSC_HANDLE)pSysInfoRepository); AnscAcquireLock(&pMyObject->AccessLock);//CcspTraceInfo(("/n##PsmSysroSysRamEnableFileSync() begins##/n")); if ( bEnabled ) { pMyObject->FileSyncRefCount--; } else { pMyObject->FileSyncRefCount++; } AnscReleaseLock(&pMyObject->AccessLock);//CcspTraceInfo(("/n##PsmSysroSysRamEnableFileSync() ENDs##/n")); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspPsm,代码行数:28,
示例9: AnscAcquireLockANSC_STATUSAnscLpccoDelAllPendingCalls ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_LPC_CONNECTOR_OBJECT pMyObject = (PANSC_LPC_CONNECTOR_OBJECT)hThisObject; PANSC_LPCCO_PENDING_CALL pPendingCall = (PANSC_LPCCO_PENDING_CALL )NULL; PSINGLE_LINK_ENTRY pSLinkEntry = (PSINGLE_LINK_ENTRY )NULL; AnscAcquireLock(&pMyObject->PcallQueueLock); pSLinkEntry = AnscQueuePopEntry(&pMyObject->PcallQueue); while ( pSLinkEntry ) { pPendingCall = ACCESS_ANSC_LPCCO_PENDING_CALL(pSLinkEntry); pSLinkEntry = AnscQueuePopEntry(&pMyObject->PcallQueue); AnscSetEvent (pPendingCall->CallEvent); AnscFreeMemory(pPendingCall); } AnscReleaseLock(&pMyObject->PcallQueueLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:28,
示例10: AnscHashStringANSC_STATUSBmc2EnvcoAddCommandProperty ( ANSC_HANDLE hThisObject, ANSC_HANDLE hCommandProperty, ANSC_HANDLE hCommandInsertBefore ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PBMC2_ENV_CONTROLLER_OBJECT pMyObject = (PBMC2_ENV_CONTROLLER_OBJECT )hThisObject; PBMC2_ENV_CONTROLLER_PROPERTY pProperty = (PBMC2_ENV_CONTROLLER_PROPERTY)&pMyObject->Property; PBMC2_COMMAND_PROPERTY pBmc2CommandProperty = (PBMC2_COMMAND_PROPERTY )hCommandProperty; PBMC2_COMMAND_PROPERTY pBmc2CommandPropRef = (PBMC2_COMMAND_PROPERTY )hCommandInsertBefore; ULONG ulHashIndex = AnscHashString(pBmc2CommandProperty->CommandName, AnscSizeOfString(pBmc2CommandProperty->CommandName), BMC2_ENVCO_COMPO_TABLE_SIZE); AnscAcquireLock (&pMyObject->CompoTableLock); if ( !pBmc2CommandPropRef ) { AnscQueuePushEntry(&pMyObject->CompoTable[ulHashIndex], &pBmc2CommandProperty->Linkage); } else { /* This makes sure that the command property with more specific domain pattern name appears before those * with less specific name. So when the command is issued, framework always tries to match domain * with longer domain name, therefore there will be no mismatch. */ AnscQueuePushEntryBefore(&pMyObject->CompoTable[ulHashIndex], &pBmc2CommandProperty->Linkage, &pBmc2CommandPropRef->Linkage); } AnscReleaseLock (&pMyObject->CompoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:32,
示例11: AnscAcquireLockANSC_STATUSTlsSmoDelAllSessions( ANSC_HANDLE hThisObject){ PTLS_SESSION_MANAGER_OBJECT pMyObject = (PTLS_SESSION_MANAGER_OBJECT )hThisObject; PTLS_SESSION_ENTRY_OBJECT pSessionEntry = (PTLS_SESSION_ENTRY_OBJECT )NULL; PSINGLE_LINK_ENTRY pSLinkEntry = (PSINGLE_LINK_ENTRY )NULL; ULONG i = 0; AnscAcquireLock(&pMyObject->SeoTableLock); for ( i = 0; i < TLS_SMO_SEO_TABLE_SIZE; i++ ) { pSLinkEntry = AnscQueuePopEntry(&pMyObject->SeoTable[i]); while ( pSLinkEntry ) { pSessionEntry = ACCESS_TLS_SESSION_ENTRY_OBJECT(pSLinkEntry); pSLinkEntry = AnscQueuePopEntry(&pMyObject->SeoTable[i]); pSessionEntry->Remove((ANSC_HANDLE)pSessionEntry); } } AnscReleaseLock(&pMyObject->SeoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:30,
示例12: AnscSizeOfStringANSC_STATUSHttpFcoAddFormElement ( ANSC_HANDLE hThisObject, ANSC_HANDLE hFeo ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_FORM_CONTENT_OBJECT pMyObject = (PHTTP_FORM_CONTENT_OBJECT)hThisObject; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_FORM_ELEMENT pFormElement = (PHTTP_FORM_ELEMENT )hFeo; ULONG ulHashIndex = 0; ulHashIndex = AnscHashString ( pFormElement->Name, AnscSizeOfString(pFormElement->Name), HTTP_FCO_FEO_TABLE_SIZE ); pFormElement->FormIndex = pMyObject->FormIndex++; pFormElement->HashIndex = ulHashIndex; AnscAcquireLock (&pMyObject->FeoTableLock); AnscQueuePushEntry(&pMyObject->FeoTable[ulHashIndex], &pFormElement->Linkage); AnscReleaseLock (&pMyObject->FeoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:30,
示例13: AnscQueuePopEntryByLinkANSC_STATUSHttpFcoDelFormElement ( ANSC_HANDLE hThisObject, char* name ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_FORM_CONTENT_OBJECT pMyObject = (PHTTP_FORM_CONTENT_OBJECT)hThisObject; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_FORM_ELEMENT pFormElement = NULL; ULONG ulHashIndex = 0; pFormElement = (PHTTP_FORM_ELEMENT)pMyObject->GetFormElement ( (ANSC_HANDLE)pMyObject, name ); if ( !pFormElement ) { return ANSC_STATUS_CANT_FIND; } else { ulHashIndex = pFormElement->HashIndex; } AnscAcquireLock (&pMyObject->FeoTableLock); AnscQueuePopEntryByLink(&pMyObject->FeoTable[ulHashIndex], &pFormElement->Linkage); AnscReleaseLock (&pMyObject->FeoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:35,
示例14: AnscHashStringANSC_HANDLEHttpFcoGetFormElement ( ANSC_HANDLE hThisObject, char* name ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_FORM_CONTENT_OBJECT pMyObject = (PHTTP_FORM_CONTENT_OBJECT)hThisObject; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_FORM_ELEMENT pFormElement = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; ULONG ulHashIndex = AnscHashString(name, AnscSizeOfString(name), HTTP_FCO_FEO_TABLE_SIZE); AnscAcquireLock(&pMyObject->FeoTableLock); pSLinkEntry = AnscQueueGetFirstEntry(&pMyObject->FeoTable[ulHashIndex]); while ( pSLinkEntry ) { pFormElement = ACCESS_HTTP_FORM_ELEMENT(pSLinkEntry); pSLinkEntry = AnscQueueGetNextEntry(pSLinkEntry); if ( AnscEqualString(pFormElement->Name, name, TRUE) ) { AnscReleaseLock(&pMyObject->FeoTableLock); return (ANSC_HANDLE)pFormElement; } } AnscReleaseLock(&pMyObject->FeoTableLock); return (ANSC_HANDLE)NULL;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:35,
示例15: AnscAcquireLockANSC_HANDLEHttpWcsoGetEndWcto ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_WEBC_SESSION_OBJECT pMyObject = (PHTTP_WEBC_SESSION_OBJECT)hThisObject; PHTTP_BSP_INTERFACE pBspIf = (PHTTP_BSP_INTERFACE )pMyObject->hBspIf; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_WEBC_TRANS_OBJECT pWebcTrans = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; ULONG ulWctoState = HTTP_WCTO_STATE_INITIALIZED; AnscAcquireLock(&pMyObject->WctoSListLock); pSLinkEntry = AnscSListGetFirstEntry(&pMyObject->WctoSList); if ( pSLinkEntry ) { pWebcTrans = ACCESS_HTTP_WEBC_TRANS_OBJECT(pSLinkEntry); pWebcTrans->AcquireAccess((ANSC_HANDLE)pWebcTrans); } else { pWebcTrans = NULL; } AnscReleaseLock(&pMyObject->WctoSListLock); return (ANSC_HANDLE)pWebcTrans;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:33,
示例16: AnscAcquireLockANSC_STATUSAnscDstoStopEngines ( ANSC_HANDLE hThisObject ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PANSC_DAEMON_SERVER_TCP_OBJECT pMyObject = (PANSC_DAEMON_SERVER_TCP_OBJECT)hThisObject; PANSC_DAEMON_ENGINE_TCP_OBJECT pEngine = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; AnscAcquireLock(&pMyObject->EngineQueueLock); pSLinkEntry = AnscQueueGetFirstEntry(&pMyObject->EngineQueue); while ( pSLinkEntry ) { pEngine = ACCESS_ANSC_DAEMON_ENGINE_TCP_OBJECT(pSLinkEntry); pSLinkEntry = AnscQueueGetNextEntry(pSLinkEntry); pEngine->Stop((ANSC_HANDLE)pEngine); } AnscReleaseLock(&pMyObject->EngineQueueLock); return ANSC_STATUS_SUCCESS;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:27,
示例17: AnscHashUlongANSC_HANDLEHttpBmoGetHeaderField ( ANSC_HANDLE hThisObject, ULONG ulHeaderId ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_BASIC_MESSAGE_OBJECT pMyObject = (PHTTP_BASIC_MESSAGE_OBJECT)hThisObject; PHTTP_HFP_INTERFACE pHfpIf = (PHTTP_HFP_INTERFACE )pMyObject->hHfpIf; PHTTP_HEADER_FIELD pHttpHfo = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; ULONG ulHashIndex = AnscHashUlong(ulHeaderId, HTTP_BMO_HFO_TABLE_SIZE); AnscAcquireLock(&pMyObject->HfoTableLock); pSLinkEntry = AnscQueueGetFirstEntry(&pMyObject->HfoTable[ulHashIndex]); while ( pSLinkEntry ) { pHttpHfo = ACCESS_HTTP_HEADER_FIELD(pSLinkEntry); pSLinkEntry = AnscQueueGetNextEntry(pSLinkEntry); if ( pHttpHfo->HeaderId == ulHeaderId ) { AnscReleaseLock(&pMyObject->HfoTableLock); return (ANSC_HANDLE)pHttpHfo; } } AnscReleaseLock(&pMyObject->HfoTableLock); return (ANSC_HANDLE)NULL;}
开发者ID:rdkcmf,项目名称:rdkb-CcspCommonLibrary,代码行数:35,
示例18: HttpFumEntityAllocANSC_STATUSWebSsoRegisterMdhIf ( ANSC_HANDLE hThisObject, PUCHAR pRequestUri, ANSC_HANDLE hMdhIf ){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PWEB_SIMPLE_SERVER_OBJECT pMyObject = (PWEB_SIMPLE_SERVER_OBJECT)hThisObject; PHTTP_FUM_INTERFACE pFumIf = (PHTTP_FUM_INTERFACE )pMyObject->hFumIf; PHTTP_FUM_ENTITY pEntity = NULL; if ( (ANSC_HANDLE)NULL == pFumIf->GetMdhIf(pFumIf->hOwnerContext, pRequestUri) ) { HttpFumEntityAlloc(pEntity, pRequestUri, hMdhIf); if ( !pEntity ) { returnStatus = ANSC_STATUS_RESOURCES; } else { AnscAcquireLock(&pMyObject->MdhSListLock); AnscSListPushEntry(&pMyObject->MdhSList, &pEntity->Linkage); AnscReleaseLock(&pMyObject->MdhSListLock); } } return returnStatus;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:30,
示例19: AnscAcquireLockANSC_STATUSHttpScoDelAllWcsos( ANSC_HANDLE hThisObject){ ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS; PHTTP_SIMPLE_CLIENT_OBJECT pMyObject = (PHTTP_SIMPLE_CLIENT_OBJECT )hThisObject; PHTTP_SIMPLE_CLIENT_PROPERTY pProperty = (PHTTP_SIMPLE_CLIENT_PROPERTY)&pMyObject->Property; PHTTP_WEBC_SESSION_OBJECT pWebcSession = NULL; PSINGLE_LINK_ENTRY pSLinkEntry = NULL; ULONG i = 0; AnscAcquireLock(&pMyObject->WcsoTableLock); for ( i = 0; i < HTTP_SCO_WCSO_TABLE_SIZE; i++ ) { pSLinkEntry = AnscSListPopEntry(&pMyObject->WcsoTable[i]); while ( pSLinkEntry ) { pWebcSession = ACCESS_HTTP_WEBC_SESSION_OBJECT(pSLinkEntry); pSLinkEntry = AnscSListPopEntry(&pMyObject->WcsoTable[i]); pWebcSession->AcquireAccess((ANSC_HANDLE)pWebcSession); pWebcSession->ReleaseAccess((ANSC_HANDLE)pWebcSession); pWebcSession->Close ((ANSC_HANDLE)pWebcSession); pWebcSession->Return ((ANSC_HANDLE)pWebcSession); } } AnscReleaseLock(&pMyObject->WcsoTableLock); return ANSC_STATUS_SUCCESS;}
开发者ID:davekimble,项目名称:CcspCommonLibrary,代码行数:35,
注:本文中的AnscAcquireLock函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ AnscAllocateMemory函数代码示例 C++ Animation函数代码示例 |