Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $ cat cactus-example.cc
- #include <iostream>
- #include <cactus/scheduler.h>
- int main(int argc, char *argv[]) {
- NCactus::TScheduler sched;
- sched.Run([] (void) {
- std::cerr << "schedule fiber A\n";
- NCactus::Go([] (void) {
- std::cerr << "A#1\n";
- NCactus::Yield();
- std::cerr << "A#2\n";
- });
- NCactus::Yield();
- std::cerr << "schedule fiber B\n";
- NCactus::Go([] (void) {
- std::cerr << "B#1\n";
- NCactus::Yield();
- std::cerr << "B#2\n";
- });
- NCactus::Yield();
- std::cerr << "wait?\n";
- });
- std::cerr << "done.\n";
- return 0;
- }
- $ ./a.out
- schedule fiber A
- A#1
- schedule fiber B
- A#2
- B#1
- wait?
- done.
Advertisement
Add Comment
Please, Sign In to add comment