상세 컨텐츠

본문 제목

[boost] asio #1

똑똑한 개발/C++

by 성댕쓰 2022. 5. 1. 09:55

본문

튜토리얼 따라 하며 boost-asio library 사용법 알아보자.

튜토리얼 링크 : Timer.1 - Using a timer synchronously - 1.79.0 (boost.org)

 

#include <iostream>
#include <boost/asio.hpp>

int main()
{
	boost::asio::io_context io;
	boost::asio::steady_timer t(io, std::chrono::seconds(5));
	t.wait();

	std::cout << "Hello, world!" << std::endl;
	return 0;
}

asio 사용하려면 적어도 하나의 io context가 있어야 한다(ex. io_context || thread_pool)

 

io 기능을 제공하는 클래스는 하나의 executor를 첫 번째 파람으로 받아 생성해야 한다.

 boost::asio::steady_timer t(io, boost::asio::chrono::seconds(5));

t.wait()는 5초 지나고 리턴된다. 타이머는 항상 expired or not expired 상태를 갖는다. expired 된 타이머의 wait을 콜하면 바로 리턴된다.

 

 

 

참조 : Tutorial - 1.79.0 (boost.org)

'똑똑한 개발 > C++' 카테고리의 다른 글

Strand 정리  (0) 2022.08.23
[boost] asio#2  (0) 2022.05.02
[Visual Studio] Character Set Unicode vs MBCS  (0) 2022.04.26
enable_shared_from_this  (0) 2022.04.22
lvalue, rvalue 알아보자  (0) 2021.05.29

관련글 더보기

댓글 영역