Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Метаморфоза получается:
- Работа на win11.
- Вот так все работает отлично:
- int main() {
- Установка кодовой страницы для ввода и вывода
- SetConsoleCP(1251); // Кодировка ввода
- SetConsoleOutputCP(1251); // Кодировка вывода
- boost::asio::io_context io;
- net::steady_timer st(io,1s);
- st.async_wait([](sys::error_code ec){
- if(ec){
- std::cout<<ec.message()<<std::endl;
- }
- std::cout<<"Running"<<std::endl;
- });
- io.run();
- }
- Но только стоит выделить отдельную область видимости:
- int main() {
- Установка кодовой страницы для ввода и вывода
- SetConsoleCP(1251); // Кодировка ввода
- SetConsoleOutputCP(1251); // Кодировка вывода
- boost::asio::io_context io;
- { // <-------------------------------------!!!!!!!!!!!!!
- net::steady_timer st(io,1s);
- st.async_wait([](sys::error_code ec){
- if(ec){
- std::cout<<ec.message()<<std::endl;
- }
- std::cout<<"Running"<<std::endl;
- });
- } // <-------------------------------------!!!!!!!!!!!!!!
- io.run();
- }
- Выводит:
- Операция ввода/вывода была прервана из-за завершения потока команд или по запросу приложения
- Эт че получается... при выходе из области видимости таймер отправляется к бинарным праотцам, а потом мы запускаем выполнение контекста
- с несуществующим таймером??? Я правильно понимаю???
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement