Add 'xo-reactor/' from commit 'e3a53d10e6'
git-subtree-dir: xo-reactor git-subtree-mainline:dd1a6b1afcgit-subtree-split:e3a53d10e6
This commit is contained in:
commit
28b6d457c0
38 changed files with 3336 additions and 0 deletions
40
xo-reactor/src/reactor/Reactor.cpp
Normal file
40
xo-reactor/src/reactor/Reactor.cpp
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
/* file Reactor.cpp
|
||||
*
|
||||
* author: Roland Conybeare, Sep 2022
|
||||
*/
|
||||
|
||||
#include "Reactor.hpp"
|
||||
#include "init_reactor.hpp"
|
||||
#include "xo/subsys/Subsystem.hpp"
|
||||
|
||||
namespace xo {
|
||||
namespace reactor {
|
||||
Reactor::Reactor() {
|
||||
/* ensure reactor subsystem + deps initialized */
|
||||
|
||||
InitSubsys<S_reactor_tag>::require();
|
||||
|
||||
Subsystem::initialize_all();
|
||||
}
|
||||
|
||||
std::uint64_t
|
||||
Reactor::run_n(int32_t n)
|
||||
{
|
||||
std::uint64_t retval = 0;
|
||||
|
||||
if (n == -1) {
|
||||
for (;;) {
|
||||
retval += this->run_one();
|
||||
}
|
||||
} else {
|
||||
for (int32_t i=0; i<n; ++i) {
|
||||
retval += this->run_one();
|
||||
}
|
||||
}
|
||||
|
||||
return retval;
|
||||
} /*run_n*/
|
||||
} /*namespace reactor*/
|
||||
} /*namespace xo*/
|
||||
|
||||
/* end Reactor.cpp */
|
||||
Loading…
Add table
Add a link
Reference in a new issue