2013-03-02から1日間の記事一覧

Boost.Asioでio_service::run()を包含する設計

C++

Boost.Asio io_serviceを包含する設計 - Faith and Brave - C++で遊ぼう 上の話に加えて、io_service::run()を誰が呼ぶかという話についてのメモ。 1つは上で紹介されているように、io_serviceを公開し、ユーザーにrun()させるパターン。 class client { pub…

Boost.Asioで非同期操作中に*thisの寿命が尽きることを防ぐ

C++

Boost.Asioを使って非同期操作を書いていると、メンバ関数から起動した非同期操作の最中に*thisの寿命が尽きて困ることがあります。 例えば次のHTTPクライアント: class http_client { public: // ... void start() { // ... // 名前解決を開始する m_resolv…