示例#1
0
ProactorService* ProactorServerAcceptor::make_handler()
{
	ProactorService* pProactorService = new ProactorService(m_acceptorNum);
	pProactorService->SetOwner(m_pOwner);

	return pProactorService;
}
示例#2
0
ProactorService* ProactorAcceptor::make_handler()
{
	_SessionDesc sessionDesc;
	sessionDesc.identifier = m_acceptorNum;
	sessionDesc.sessionType = 0;

	ProactorService* pProactorService = new ProactorService();
	pProactorService->SetOwner(m_pOwner);
	pProactorService->SetSessionDesc(sessionDesc);
	
	return pProactorService;
}
示例#3
0
int ACEEngine::AddConnector(int connectorIndex, char* szIP, unsigned short port)
{
	ACE_SOCK_Stream* stream = new ACE_SOCK_Stream();
	ACE_INET_Addr connectAddr(port, szIP);
	ACE_SOCK_Connector connector;
	int result = connector.connect(*stream, connectAddr);
	if (-1 == result)
		return -1;

	_SessionDesc sessionDesc;
	sessionDesc.identifier = connectorIndex;
	sessionDesc.sessionType = SESSION_TYPE::SESSION_CONNECTOR;

	ProactorService* pService = new ProactorService();
	pService->SetOwner(this);
	pService->SetSessionDesc(sessionDesc);

	ACE_Message_Block mb;
	pService->open(stream->get_handle(), mb);
	delete stream;
	stream = NULL;

	return pService->GetSerial();
}