| 309 | } |
| 310 | |
| 311 | void init() |
| 312 | { |
| 313 | kqfd = kqueue(); |
| 314 | if (kqfd == -1) { |
| 315 | throw std::system_error(errno, std::system_category()); |
| 316 | } |
| 317 | try { |
| 318 | Base::init(this); |
| 319 | } |
| 320 | catch (...) { |
| 321 | close(kqfd); |
| 322 | throw; |
| 323 | } |
| 324 | } |
| 325 | |
| 326 | ~kqueue_loop() noexcept |
| 327 | { |