***********/
namespace simgrid {
-namespace surf {
-class LinkImpl;
-}
namespace s4u {
/** @brief A Link represents the network facilities between [hosts](\ref simgrid::s4u::Host) */
class Link {
if (res == -1)
throw simgrid::xbt::errno_error("Could not create socketpair");
- pid_t pid = do_fork([&] {
+ pid_t pid = do_fork([sockets, &code] {
::close(sockets[1]);
setup_child_environment(sockets[0]);
code();
// static
Session* Session::spawnv(const char *path, char *const argv[])
{
- return Session::fork([&] {
+ return Session::fork([path, argv] {
execv(path, argv);
});
}
// static
Session* Session::spawnvp(const char *file, char *const argv[])
{
- return Session::fork([&] {
+ return Session::fork([file, argv] {
execvp(file, argv);
});
}
if (name == nullptr)
name = "";
smx_actor_t self = SIMIX_process_self();
- return simgrid::simix::kernelImmediate([&] {
+ return simgrid::simix::kernelImmediate([name, code, data, host, kill_time, properties, auto_restart, self] {
return SIMIX_process_create(name, std::move(code), data, host, kill_time, properties, auto_restart, self);
});
}
class MailboxImpl {
public:
- MailboxImpl(const char* name)
+ explicit MailboxImpl(const char* name)
: piface_(this), name_(xbt_strdup(name)), comm_queue(MAX_MAILBOX_SIZE), done_comm_queue(MAX_MAILBOX_SIZE)
{
}