#include "crimson/net/Dispatcher.h"
#include "crimson/net/Messenger.h"
#include "crimson/net/Config.h"
-#include "crimson/thread/Condition.h"
#include "crimson/thread/Throttle.h"
#include <seastar/core/alien.hh>
class SeastarContext {
seastar::file_desc begin_fd;
- crimson::thread::Condition on_end;
+ seastar::readable_eventfd on_end;
public:
SeastarContext()
// alien: i've sent my request. have you replied it?
// wait_for_seastar();
// alien: you are free to go!
- on_end.notify();
+ on_end.write_side().signal(1);
}};
}
return set_seastar_ready();
}).then([this] {
// seastar: let me know once i am free to leave.
- return on_end.wait();
+ return on_end.wait().then([](size_t){});
}).handle_exception([](auto ep) {
std::cerr << "Error: " << ep << std::endl;
}).finally([] {