본문 바로가기
프로그래밍/boost

boost::asio::buffer

by neive 2011. 10. 28.
728x90


http://think-async.com/Asio/boost_asio_1_3_1/doc/html/boost_asio/reference/buffer.html


boost::asio::buffer 의 사용법이 잘 나와있는 레퍼런스 페이지

asio service 에서 쓰이는 read write 시 데이터 전송의 좋은 활용 예를 볼 수 있다


Buffers and Scatter-Gather I/O 의 예

	char d1[128];
	std::vector d2(128);
	boost::array d3;
	boost::array bufs1 = {  boost::asio::buffer(d1),
		boost::asio::buffer(d2),  boost::asio::buffer(d3) };
	bytes_transferred = sock.receive(bufs1);
	
	std::vector bufs2;
	bufs2.push_back(boost::asio::buffer(d1));
	bufs2.push_back(boost::asio::buffer(d2));
	bufs2.push_back(boost::asio::buffer(d3));
	bytes_transferred = sock.send(bufs2); 
 
				boost::asio::mutable_buffer buf = boost::asio::buffer(ptr.get(), _BUFF_SIZE);
				boost::system::error_code error;
				int len = boost::asio::write(m_Socket, boost::asio::buffer(buf, Msg.size()), error);
728x90

댓글