• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-380  評論-37  文章-0  trackbacks-0
            #include <iostream>
            #include <boost/asio.hpp>
            #include <boost/bind.hpp>
            #include <boost/shared_ptr.hpp>
            #include "Session.h"
            using namespace boost::asio::ip;
            using namespace boost::asio;
            class Acceptor 
            {
            public:
            typedef boost::shared_ptr<Session> SessionPtr;
            public: 
            Acceptor(io_service& ioservice, tcp::endpoint& endpoint);
            ~Acceptor();
            private: 
            void handle_accept(const boost::system::error_code& error, SessionPtr session);
            private: 
            io_service& ioservice_;
            tcp::acceptor acceptor_; 
            };


            #include "stdafx.h"
            #include "Acceptor.h"
            Acceptor::Acceptor(boost::asio::io_service& ioservice, tcp::endpoint& endpoint) : 
            ioservice_(ioservice), 
            acceptor_(ioservice, endpoint)
            {
            SessionPtr new_session(new Session(ioservice));
            acceptor_.async_accept(new_session->socket(),
            boost::bind(&Acceptor::handle_accept, this, boost::asio::placeholders::error, new_session));
            }
            Acceptor::~Acceptor()
            {
            }
            void Acceptor::handle_accept(const boost::system::error_code& error, SessionPtr session)
            {
            if (!error)
            {
            std::cout << "get a new client!" << std::endl; //實現對每個客戶端的數據處理 
            session->start();
            SessionPtr new_session(new Session(ioservice_));
            acceptor_.async_accept(new_session->socket(),
            boost::bind(&Acceptor::handle_accept, this, boost::asio::placeholders::error, new_session));
            }
            }

            ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            #pragma once
            #include <iostream>
            #include <boost/asio.hpp>
            #include <boost/bind.hpp>
            #include <boost/smart_ptr.hpp>
            #define max_len 1024
            using namespace boost::asio::ip;
            class Session : public boost::enable_shared_from_this<Session>
            {
            public:
            Session(boost::asio::io_service& ioservice);
            ~Session();
            tcp::socket& socket();
            void start();
            private:
            void handle_write(const boost::system::error_code& error);
            void handle_read(const boost::system::error_code& error);
            private:
            tcp::socket m_socket;
            char data_[max_len];
            };
            posted on 2009-08-19 00:21 小王 閱讀(1430) 評論(0)  編輯 收藏 引用 所屬分類: 網絡通訊
            77777亚洲午夜久久多喷| 国产精品福利一区二区久久| 久久亚洲国产精品成人AV秋霞| 99久久香蕉国产线看观香| 久久精品国产男包| 国产精品久久成人影院| 色诱久久av| 免费观看久久精彩视频| 中文成人无码精品久久久不卡| 综合网日日天干夜夜久久| 精品国产青草久久久久福利| 国产毛片欧美毛片久久久 | 亚洲人成无码www久久久| 精品人妻久久久久久888| 狠狠色丁香久久婷婷综合蜜芽五月 | 久久91精品国产91久久麻豆| 亚洲?V乱码久久精品蜜桃| 热99re久久国超精品首页| 亚洲精品乱码久久久久久按摩 | 精品精品国产自在久久高清 | 国产美女久久久| 亚洲国产精品无码久久98| 一日本道伊人久久综合影| 久久国产影院| 热久久这里只有精品| 欧美亚洲另类久久综合| 久久久久久免费一区二区三区| 99久久99久久精品国产片果冻| 亚洲精品成人久久久| 欧美激情精品久久久久| 国产精品久久久福利| 精品一区二区久久| 麻豆精品久久精品色综合| 国产精品青草久久久久婷婷| 麻豆成人久久精品二区三区免费| 亚洲国产成人久久笫一页| 国产综合精品久久亚洲| 精品乱码久久久久久夜夜嗨| 久久99精品九九九久久婷婷| 丁香五月综合久久激情| 日本亚洲色大成网站WWW久久 |