• <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>
            隨筆-379  評論-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 小王 閱讀(1416) 評論(0)  編輯 收藏 引用 所屬分類: 網絡通訊
            狠狠干狠狠久久| 国内精品伊人久久久久影院对白| 国产视频久久| 精品无码久久久久国产| 亚洲级αV无码毛片久久精品| 久久久久亚洲AV成人网人人软件| 国产99久久久国产精免费| 久久国产精品无码HDAV| 精品国产VA久久久久久久冰| 色婷婷综合久久久久中文| 一本久道久久综合狠狠爱| 无码人妻久久一区二区三区蜜桃 | 久久亚洲精品成人无码网站| 久久午夜福利电影| 久久亚洲AV永久无码精品| 欧美大战日韩91综合一区婷婷久久青草| 伊人热人久久中文字幕| 国产日韩久久免费影院| 色综合久久88色综合天天 | 热久久最新网站获取| 欧美国产成人久久精品| 午夜不卡久久精品无码免费| 色婷婷久久综合中文久久蜜桃av | 久久精品人人槡人妻人人玩AV | 精品久久久久久中文字幕| 久久亚洲高清观看| 精品久久人人妻人人做精品 | 久久w5ww成w人免费| 久久精品国产亚洲欧美| 狠狠色丁香婷婷综合久久来来去| 久久99精品久久久久久水蜜桃| 伊人伊成久久人综合网777| 精品久久久无码21p发布| 99久久久精品免费观看国产| 国产成人精品久久| 久久久久久久久久久| 国产成人精品免费久久久久| 久久久久久国产精品无码下载| 久久91精品国产91| 国产精品久久久久久一区二区三区| 国产精品成人久久久久三级午夜电影|