From 119c7e98c016d40dfa5fc294a3cdd6a4cd8c0082 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Tue, 8 Feb 2022 16:50:32 +0100 Subject: [PATCH] Leak--. --- examples/cpp/network-ns3/s4u-network-ns3.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/examples/cpp/network-ns3/s4u-network-ns3.cpp b/examples/cpp/network-ns3/s4u-network-ns3.cpp index 2b37ae8136..f4611422bf 100644 --- a/examples/cpp/network-ns3/s4u-network-ns3.cpp +++ b/examples/cpp/network-ns3/s4u-network-ns3.cpp @@ -4,15 +4,16 @@ * under the terms of the license (GNU LGPL) which comes with this package. */ #include "simgrid/s4u.hpp" +#include +#include XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_test, "Messages specific for this s4u example"); int timer_start; // set as 1 in the master actor -#define NTASKS 1500 double start_time; -const char* workernames[NTASKS]; -const char* masternames[NTASKS]; +std::unordered_map workernames; +std::unordered_map masternames; int count_finished = 0; static void master(int argc, char* argv[]) @@ -26,11 +27,11 @@ static void master(int argc, char* argv[]) int id = std::stoi(argv[3]); // unique id to control statistics /* worker name */ - workernames[id] = xbt_strdup(argv[2]); + workernames[id] = argv[2]; simgrid::s4u::Mailbox* mbox = simgrid::s4u::Mailbox::by_name(argv[3]); - masternames[id] = simgrid::s4u::Host::current()->get_cname(); + masternames[id] = simgrid::s4u::Host::current()->get_name(); auto* payload = new double(msg_size); @@ -81,7 +82,8 @@ static void worker(int argc, char* argv[]) double elapsed_time = simgrid::s4u::Engine::get_clock() - start_time; - XBT_INFO("FLOW[%d] : Receive %.0f bytes from %s to %s", id, *payload, masternames[id], workernames[id]); + XBT_INFO("FLOW[%d] : Receive %.0f bytes from %s to %s", id, *payload, masternames.at(id).c_str(), + workernames.at(id).c_str()); XBT_DEBUG("FLOW[%d] : transferred in %f seconds", id, elapsed_time); XBT_DEBUG("Finished"); -- 2.20.1