Create I/O service object in sender thread.

This commit is contained in:
lotodore
2009-01-26 20:57:39 +00:00
parent 7d1021cde7
commit e0ff6db98e
6 changed files with 27 additions and 11 deletions
+3 -2
View File
@@ -44,8 +44,9 @@ ClientContext::ClientContext()
{
bzero(&m_clientSockaddr, sizeof(m_clientSockaddr));
m_senderCallback.reset(new ClientSenderCallback());
m_senderThread.reset(new SenderThread(*m_senderCallback, m_ioService));
m_senderThread.reset(new SenderThread(*m_senderCallback));
m_senderThread->Start();
m_ioService = dynamic_cast<SenderThread *>(m_senderThread.get())->GetIOService();
}
ClientContext::~ClientContext()
@@ -65,7 +66,7 @@ ClientContext::GetSocket() const
void
ClientContext::SetSocket(SOCKET sockfd)
{
m_sessionData.reset(new SessionData(sockfd, SESSION_ID_GENERIC, m_senderThread, *m_senderCallback, m_ioService));
m_sessionData.reset(new SessionData(sockfd, SESSION_ID_GENERIC, m_senderThread, *m_senderCallback, *m_ioService));
}
boost::shared_ptr<SessionData>