- simgrid::s4u::CommPtr comm = mbox->put_async((void*)payload, msg_size);
- XBT_INFO("Send to receiver-%ld Task_%d", i % receivers_count, i);
- pending_comms->push_back(comm);
+ std::string mboxName = std::string("receiver-") + std::to_string(i % receivers_count);
+ simgrid::s4u::MailboxPtr mbox = simgrid::s4u::Mailbox::by_name(mboxName);
+ std::string msgName = std::string("Message ") + std::to_string(i);
+ std::string* payload = new std::string(msgName); // copy the data we send:
+ // 'msgName' is not a stable storage location
+ XBT_INFO("Send '%s' to '%s'", msgName.c_str(), mboxName.c_str());
+ /* Create a communication representing the ongoing communication */
+ simgrid::s4u::CommPtr comm = mbox->put_async(payload, msg_size);
+ /* Add this comm to the vector of all known comms */
+ pending_comms.push_back(comm);