-/* Copyright (c) 2006-2022. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2006-2023. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
namespace simgrid::s4u {
-const xbt::string& Mailbox::get_name() const
+const std::string& Mailbox::get_name() const
{
return pimpl_->get_name();
}
xbt_assert(payload != nullptr, "You cannot send nullptr");
CommPtr res = put_init(payload, simulated_size_in_bytes);
- res->vetoable_start();
+ res->start();
return res;
}
{
xbt_assert(payload != nullptr, "You cannot send nullptr");
- put_init()->set_payload_size(simulated_size_in_bytes)->set_src_data(payload)->vetoable_start()->wait();
+ put_init()->set_payload_size(simulated_size_in_bytes)->set_src_data(payload)->start()->wait();
}
/** Blocking send with timeout */
{
xbt_assert(payload != nullptr, "You cannot send nullptr");
- put_init()->set_payload_size(simulated_size_in_bytes)->set_src_data(payload)->vetoable_start()->wait_for(timeout);
+ put_init()->set_payload_size(simulated_size_in_bytes)->set_src_data(payload)->start()->wait_for(timeout);
}
CommPtr Mailbox::get_init()
return res;
}
+CommPtr Mailbox::get_async()
+{
+ CommPtr res = get_init()->set_dst_data(nullptr, sizeof(void*));
+ res->start();
+ return res;
+}
+
kernel::activity::ActivityImplPtr
Mailbox::iprobe(int type, const std::function<bool(void*, void*, kernel::activity::CommImpl*)>& match_fun, void* data)
{