void EchoServer::onMessage(const TcpConnectionPtr &conn) { string s(conn->receive()); //不要把recv任务放到线程池 //conn->send(s); pool_.addTask(bind(&EchoServer::compute, this, s, conn)); }
void EchoServer::onMessage(const TcpConnectionPtr &conn) { ifstream infile; infile.close(); infile.clear(); infile.open("test.txt"); TextQuery tq; tq.read_file(infile); string s(conn->receive()); s.erase(s.size() - 2); pool_.addTask(bind(&EchoServer::compute, this, s, conn, tq)); }
void WordQueryServer::onMessage(const TcpConnectionPtr & conn) { string msg(conn->receive()); size_t pos = msg.find('\n'); msg = msg.substr(0, pos); cout << "client:" << msg << ",size:" << msg.size() << endl; //string ret = _wordQuery.doQuery(msg); //cout << "result's size:" << ret.size() << endl; //conn->send(ret); _pool.addTask(std::bind(&WordQueryServer::doTaskThread, this, conn, msg)); }
void onMessage(const TcpConnectionPtr &conn) { conn->receive(); conn->send("ACK"); }
void QueryServer::onMessage(const TcpConnectionPtr &conn) { string word(conn->receive()); pool_.addTask(bind(&QueryServer::runQuery, this, word, conn)); }
void SpcServer::onMessage(TcpConnectionPtr conn){ string msg=conn->receive(); cout << msg << endl; MyTask task(msg, conn->fd()); _threadPool.addTask(std::bind(& MyTask::execute, task)); }