Jul 1, 2024
read_file(file_name, buffer, handler) — initiates file reading operation and calls the handler upon completion.// pseudo-code
void timer_expired(const boost::system::error_code& err) {
std::cout << "Timer expired";
}
boost::asio::io_service io_service;
boost::asio::deadline_timer timer(io_service, boost::posix_time::seconds(5));
timer.async_wait(&timer_expired);
io_service.run();
async_wait). The actual operation starts immediately.// pseudo-code
auto functor = boost::bind(divide, _1, _2);
int result = functor(10, 5); // result = 2
// pseudo-code
boost::asio::io_service io_service;
boost::asio::strand strand(io_service);
strand.post(boost::bind(&some_function, some_object));
strand.post(boost::bind(&another_function, another_object));
io_service.run();
// pseudo-code
std::shared_ptr<MyClass> ptr(new MyClass);
boost::asio::io_service io_service;
io_service.post(boost::bind(&MyClass::my_method, ptr, arg1));
// pseudo-code
class MyClass : public std::enable_shared_from_this<MyClass> {
void my_method(int arg1) {
auto self = shared_from_this();
// do something
}
};
boost::asio::buffer(data, size).// pseudo-code
io_service.post(boost::bind(&some_function, arg1, arg2));
async_read, async_write).