# This simple example does not do anything beyond that
def privileged():
- # This version of execute() with two parameters specifies that this execution
- # gets a larger share of the resource.
- #
- # Since the priority is 2, it computes twice as fast as a regular one.
+ # You can also specify the priority of your execution as follows.
+ # An execution of priority 2 computes twice as fast as a regular one.
#
# So instead of a half/half sharing between the two executions,
# we get a 1/3 vs 2/3 sharing.
- this_actor.execute(98095, 2);
+ this_actor.execute(98095, priority = 2);
this_actor.info("Done.");
# Note that the timings printed when executing this example are a bit misleading,
/* this_actor namespace */
py::module m2 = m.def_submodule("this_actor", "Bindings of the s4u::this_actor namespace.");
m2.def("info", [](char* s) { XBT_INFO("%s", s); }, "Display a logging message of default priority.");
- m2.def("execute", py::overload_cast<double>(&simgrid::s4u::this_actor::execute),
- "Block the current actor, computing the given amount of flops, see :cpp:func:`void "
- "simgrid::s4u::this_actor::execute(double)`");
m2.def("execute", py::overload_cast<double, double>(&simgrid::s4u::this_actor::execute),
"Block the current actor, computing the given amount of flops at the given priority, see :cpp:func:`void "
- "simgrid::s4u::this_actor::execute(double, double)`");
+ "simgrid::s4u::this_actor::execute(double, double)`",
+ py::arg("flops"), py::arg("priority") = 1);
m2.def("yield_", &simgrid::s4u::this_actor::yield,
"Yield the actor, see :cpp:func:`void simgrid::s4u::this_actor::yield()`");