boost-asio

    0熱度

    1回答

    我甚至不確定這個問題是否有意義,但我試圖解決以下問題,而不必重寫大部分代碼。 我有一個tcp服務器讀寫使用tcp :: socket與boost :: asio :: async_read_until和boost :: asio :: write函數。現在有一個用例可以從文件流到這個套接字。 tcp :: iostream是做到這一點的理想方式;我可以使用當前打開的tcp :: socket創建一

    3熱度

    1回答

    我想在使用boost :: dll :: shared_library加載的DLL中使用Boost-Deadlinetimer。以下代碼片段被簡化爲基本要素。 example.h文件: #include <boost/asio.hpp> class Example { public: Class() : m_timer(m_ioService) { } virtual ~

    0熱度

    1回答

    我想創建一個簡單的boost.beast websocket服務器,它接受連接並保存它的指針,並且當有人連接時發送消息到每個連接的套接字。 我已經採取了代碼boost.beast async_server例如:https://github.com/vinniefalco/Beast/blob/master/example/websocket-server-async/websocket_serve

    1熱度

    1回答

    我正在嘗試使用自定義匹配函數作爲boost :: asio組合操作的一部分。當傳遞std::move(*this)作爲異步操作的處理程序時,VS2017無法推導出具有自定義匹配條件的參數。 組合操作是一個類,它有一個 void operator()(boost::beast::error_code ec, std::size_t bytes_transferred)過載。例如: class mat

    0熱度

    1回答

    我想一個信號處理程序添加到我的提振io_service對象,允許應用程序完全在用戶按下Ctrl-C來關閉io_service對象。這當然是通過停止循環,這樣的事情很容易做到的: boost::asio::io_service service; boost::asio::signal_set signals{ service, SIGINT, SIGTERM }; signals.async_

    4熱度

    2回答

    從網絡中斷中恢復我正在編寫一個接受來自設備的數據並對其進行處理的服務器。一切工作正常,除非網絡中斷(即,如果我拔掉以太網電纜,然後重新連接它)。我正在使用read_until(),因爲設備使用的協議會使用特定的字節序列來終止數據包。當數據流中斷時,read_until()按預期阻塞。但是,當流再次啓動時,它仍然被阻塞。如果我用Wireshark查看數據流,設備將繼續傳輸,並且每個數據包都由網絡堆棧

    1熱度

    1回答

    我試圖改變一個即發即熱的UDP發送函數從同步到異步的實現。 目前簡易的同步功能看起來是這樣的: ssize_t UDPTransport::send_to(const char * buffer, size_t bufferSize) { return mPSocket->send_to(boost::asio::buffer(buffer, bufferSize), mOutputEn

    0熱度

    2回答

    我正在嘗試使用boost單元測試來測試我的boost asio套接字偵聽器。監聽器的目的是簡單地監聽一個端口並讀取所有內容並將其保存到一個隊列中併發回一個http響應頭。 作爲第一步,我創建了一個客戶端向偵聽器發送消息並讀取來自偵聽器的響應消息。我還創建了一個線程來啓動偵聽器。主線程將發送和接收來自Listener的消息。我可以在客戶端和列表程序之間發送和接收消息。但是當我嘗試加入時,它並沒有加入

    2熱度

    1回答

    我想運行使用boost :: asio和boost :: fiber的autoecho program。我使用了以下內容: Ubuntu的16 cmake的3.9.1 升壓1_65_0 該方案取決於round_robin.hpp,yield.hpp和細節的本地拷貝/ yield.hpp。我已經下載了所有這些和程序構建成功。當我運行的代碼,我在主,做行獲得分割故障: io_svc->run();

    2熱度

    2回答

    我想讀取來自arduino的串行數據,但是當我運行我的程序時,它只讀取緩衝區中的所有數據,這是實際在程序啓動之前發送的數據。然後我終止與以下錯誤: terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_inject