]> AND Public Git Repository - simgrid.git/blobdiff - src/kernel/activity/MailboxImpl.cpp
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove old wait any simcall
[simgrid.git] / src / kernel / activity / MailboxImpl.cpp
index 7cb3676fba301750e80d22da724c541f2b97fe35..febedbe2003428aa99809613d544e16d496b302f 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2007-2021. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2007-2022. 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. */
@@ -8,16 +8,7 @@
 
 #include <unordered_map>
 
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_mailbox, simix, "Mailbox implementation");
-
-static std::unordered_map<std::string, smx_mailbox_t> mailboxes;
-
-void SIMIX_mailbox_exit()
-{
-  for (auto const& elm : mailboxes)
-    delete elm.second;
-  mailboxes.clear();
-}
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(ker_mailbox, kernel, "Mailbox implementation");
 
 /******************************************************************************/
 /*                           Rendez-Vous Points                               */
@@ -26,29 +17,9 @@ void SIMIX_mailbox_exit()
 namespace simgrid {
 namespace kernel {
 namespace activity {
-/** @brief Returns the mailbox of that name, or nullptr */
-MailboxImpl* MailboxImpl::by_name_or_null(const std::string& name)
-{
-  auto mbox = mailboxes.find(name);
-  if (mbox != mailboxes.end())
-    return mbox->second;
-  else
-    return nullptr;
-}
 
-/** @brief Returns the mailbox of that name, newly created on need */
-MailboxImpl* MailboxImpl::by_name_or_create(const std::string& name)
-{
-  /* two actors may have pushed the same mbox_create simcall at the same time */
-  auto m = mailboxes.find(name);
-  if (m == mailboxes.end()) {
-    auto* mbox = new MailboxImpl(name);
-    XBT_DEBUG("Creating a mailbox at %p with name %s", mbox, name.c_str());
-    mailboxes[name] = mbox;
-    return mbox;
-  } else
-    return m->second;
-}
+unsigned MailboxImpl::next_id_ = 0;
+
 /** @brief set the receiver of the mailbox to allow eager sends
  *  @param actor The receiving dude
  */