当前位置: 首页>>代码示例>>C++>>正文


C++ Session::IsActive方法代码示例

本文整理汇总了C++中Session::IsActive方法的典型用法代码示例。如果您正苦于以下问题:C++ Session::IsActive方法的具体用法?C++ Session::IsActive怎么用?C++ Session::IsActive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Session的用法示例。


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

示例1: getter

static void
node_opened(struct vnode *vnode, int32 fdType, dev_t device, ino_t parent,
	ino_t node, const char *name, off_t size)
{
	if (device < gBootDevice) {
		// we ignore any access to rootfs, pipefs, and devfs
		// ToDo: if we can ever move the boot device on the fly, this will break
		return;
	}

	Session *session;
	SessionGetter getter(team_get_current_team_id(), &session);

	if (session == NULL) {
		char buffer[B_FILE_NAME_LENGTH];
		if (name == NULL
			&& vfs_get_vnode_name(vnode, buffer, sizeof(buffer)) == B_OK)
			name = buffer;

		// create new session for this team
		getter.New(name, device, node, &session);
	}

	if (session == NULL || !session->IsActive()) {
		if (sMainSession != NULL) {
			// ToDo: this opens a race condition with the "stop session" syscall
			getter.Stop();
		}
		return;
	}

	session->AddNode(device, node);
}
开发者ID:DonCN,项目名称:haiku,代码行数:33,代码来源:launch_speedup.cpp

示例2:

void
GameServer::OnAcquireTableAccess(AcquireTableAccessPacket* p, void* pParam){
	if( p->m_nSessionId != 0 || p->m_nSessionIdAcquire == 0 || p->m_nTableId <= 0 || p->m_nTournamentId < 0 )
		return;

	ClientConnection*	pConn		= (ClientConnection*)pParam;
	Session*			pSess		= Session::GetSessionById(p->m_nSessionIdAcquire, true);
	bool				bSuccess	= false;
	if( pConn->IsTableConnection() )
		return;

	if( pSess && pSess->IsActive() ){
		int	 nUserId = pSess->GetUserId();
		pSess->SetTableConnection(p->m_nTableId, p->m_nTournamentId, pConn, true);
		pConn->SetTableConnection(p->m_nTableId, p->m_nTournamentId);

		if( nUserId > 0 )
			pConn->SetAuthorized(true);

		p->m_bAvatarIsBlocked	= pSess->IsAvatarBlocked();
		p->m_bChatIsBlocked		= pSess->IsChatBlocked();
		p->m_nUserId			= nUserId;
		bSuccess				= true;
		SafePointer::Release(pSess);
		}

	// Send reply.
	if( bSuccess ){
		//pConn->SetAuthorized(
		pConn->SetSession(pSess);
		p->m_nErrorCode = ES_ERROR_SUCCESS;
		}
	else{
		p->m_nUserId	= 0;
		p->m_nErrorCode = ES_ERROR_UNKNOWN;
		}
	SendPacket(pConn, p, true);
	}
开发者ID:zqrtalent,项目名称:MercuryUI,代码行数:38,代码来源:GameServer.cpp


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