いわゆる非対称コルーチン。C++03/11 両対応。 https://gist.github.com/3684731 簡単な使い方。 #include <iorate/fiber.hpp> int main() { iorate::fiber f([] { for (auto const c : "Hello, world!\n") { std::cout << c; iorate::fiber::yield(); } }); while (f.alive()) { f.resume(); } } Boost.Context は trunk に入った当初は高レベル API を提供していたのですが、ある時を境にばっさり削除されてしまったという経緯があります(Boost.Contextの怒涛の変更 - にゃははー に詳しい)。おかげで Boost.Context でググって出てくる記事の多くは