Информация об изменениях

Сообщение Re[8]: Mногопоточность: C++ vs Erlang vs другие от 04.06.2015 18:10

Изменено 04.06.2015 18:11 Evgeny.Panasyuk

Здравствуйте, vdimas, Вы писали:

S>>>>Есть ли в бусте что-то, позволяющее мне нарезать линейный (по спецификации) алгоритм на фрагменты, которые можно исполнять по мере поступления IOCP, без мучительной отладки и замусоривания кода бойлерплейтом?

V>>>Нет.
EP>>Как это нет? В Boost.Asio есть поддержка stackful coroutine из коробки.
V>Ты, наверно, недопонял вопрос.
V>См. примеры реализации асинхронщины на дотнете на async/await.
V>Там обыгрывается не только и не столько ввод/вывод (т.е. не только asio), а вообще любой асинхронный код.

В ASIO есть поддержка IOCP, если чего-то необходимого нет — то при необходимости реализуется.
Вопрос же скорее был про неявную нарезку алгоритма на фрагменты — вот для этого подходит Boost.Coroutine, причём не только для IOCP — а и для любого другого подобного асинхронного кода.
Re[8]: Mногопоточность: C++ vs Erlang vs другие
Здравствуйте, vdimas, Вы писали:

S>>>>Есть ли в бусте что-то, позволяющее мне нарезать линейный (по спецификации) алгоритм на фрагменты, которые можно исполнять по мере поступления IOCP, без мучительной отладки и замусоривания кода бойлерплейтом?

V>>>Нет.
EP>>Как это нет? В Boost.Asio есть поддержка stackful coroutine из коробки.
V>Ты, наверно, недопонял вопрос.
V>См. примеры реализации асинхронщины на дотнете на async/await.
V>Там обыгрывается не только и не столько ввод/вывод (т.е. не только asio), а вообще любой асинхронный код.

В ASIO есть поддержка IOCP, если чего-то необходимого нет — то при необходимости реализуется.
Вопрос же скорее был про неявную нарезку алгоритма на фрагменты ("same fringe problem") — вот для этого подходит Boost.Coroutine, причём не только для IOCP — а и для любого другого подобного асинхронного кода.