连接到提升命名管道
Connect to boost named pipe
我有这个代码:
boost::asio::io_service ios;
std::vector<char> buf(20);
bp::async_pipe ap(ios, "\\.\pipe\SamplePipe");
boost::asio::async_read(ap, boost::asio::buffer(buf),
[](const boost::system::error_code &ec, std::size_t size) {});
ios.run();
现在,我在 cmd 中执行 echo 42 > \.\pipe\SamplePipe
并期望对缓冲区进行异步读取。但是我得到了以下错误:"All pipe instances are busy."有人可以向我解释为什么会这样以及我该如何解决它吗?
在新版本的boost中它被修复了。参见 this。
我有这个代码:
boost::asio::io_service ios;
std::vector<char> buf(20);
bp::async_pipe ap(ios, "\\.\pipe\SamplePipe");
boost::asio::async_read(ap, boost::asio::buffer(buf),
[](const boost::system::error_code &ec, std::size_t size) {});
ios.run();
现在,我在 cmd 中执行 echo 42 > \.\pipe\SamplePipe
并期望对缓冲区进行异步读取。但是我得到了以下错误:"All pipe instances are busy."有人可以向我解释为什么会这样以及我该如何解决它吗?
在新版本的boost中它被修复了。参见 this。