boost-asio

    1熱度

    1回答

    我使用Boost.Asio,但這個問題應該涵蓋任何異步框架。 我有一個通過網絡發送和接收數據的類。我想給我的用戶讀取和寫入方法以及一個is_busy()讓他們檢查數據何時可用。現在,我有寫方法的完成處理程序觸發一個後臺線程,讀取並返回未來,而read()方法從未來讀取。 write方法將bool設置爲true,並且在返回數據時讀取線程將其設置爲false。 有沒有更好的方法?如果我使用Asio正確

    2熱度

    1回答

    我正在使用boost::asio將數據傳輸到&從客戶端到服務器。我在客戶端有讀取器線程來讀取客戶端上的套接字上接收到的數據。請注意,我在服務器端的客戶端& boost::asio::write上使用boost::asio::read。 不使用async_read或async_write。一切都很好。 但是,當我關閉我的應用程序,2 10倍的應用程序不乾淨地拆卸或關閉正常。它在關閉時被掛起問題如下:

    1熱度

    1回答

    我在網上找到的很多例子都建議使用隊列來管理async_write所使用的消息,該消息又使用完成處理程序i..e,lambda,一旦async_write被丟棄完成。例如,來自boost示例的聊天服務器:http://www.boost.org/doc/libs/1_62_0/doc/html/boost_asio/example/cpp11/chat/chat_server.cpp。適用的代碼如下

    0熱度

    1回答

    我使用升壓通過TCP與async_write發送數據: std::shared_ptr<std::vector<std::string>::iterator> iter = std::make_shared<std::vector<std::string>::iterator>(this->m_vDataToWrite.begin()); boost::asio::async_write(this

    0熱度

    1回答

    我正在使用asio在C++中重寫python扭曲的服務器。我已經建立了下面的例子從 http://www.boost.org/doc/libs/1_39_0/doc/html/boost_asio/tutorial.html: Daytime.1 - 同步TCP daytime客戶 Daytime.3 - 異步TCP daytime服務器 和他們似乎正常。然而,令我費解的是,當我創建了扭曲的服務器

    1熱度

    1回答

    我們遇到獨立(非升壓)的異步操作在Linux 1.10.6短耳,這是使用下面的測試程序演示了一個問題: #define ASIO_STANDALONE #define ASIO_HEADER_ONLY #define ASIO_NO_EXCEPTIONS #define ASIO_NO_TYPEID #include "asio.hpp" #include <chrono> #inc

    1熱度

    1回答

    我正在使用boost::asio::async_read_until從TCP套接字讀取\n -ended行。讓我請記得,async_read_until簽名如下: http://www.boost.org/doc/libs/1_63_0/doc/html/boost_asio/reference.html#boost_asio.reference.async_read_until void-or-

    0熱度

    1回答

    以下代碼基於升壓文檔示例http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/example/echo/async_tcp_echo_server.cpp。我只是稍微改了一點,以便我可以在不同的線程中運行服務器,並在運行幾秒鐘後退出。 此代碼按預期工作。當客戶端連接併發送一些文本時,副本會回傳給客戶端。 只有一個問題。有一個session

    0熱度

    2回答

    我可以使用boost :: bind使結果函數對象存儲一個對象,該對象不會被聲明爲綁定目標函數的參數嗎?例如: void Connect(const error_code& errorCode) { ... } // Invokes Connect after 5 seconds. void DelayedConnect() { boost::shared_ptr<

    1熱度

    1回答

    我是新來的C++,我開始用boost來編寫我的服務器。我在網絡和官方文檔中都遵循了很多示例。但是,我沒有發現任何東西(也許我沒有問這個好問題)關於這個 - >與特定客戶進行交流。我的意思是覺得─> 老問題: 服務器啓動和等待連接 - >客戶端(1)通過 TCP的連接>服務器接受客戶端,並開始async_read 假設3個客戶端也連接 - > 我怎麼會告訴我的服務器也寫太客戶端(2)或(3),但不是