Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Don't create mailbox before engine is turned on.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 25 May 2021 15:46:43 +0000 (17:46 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 25 May 2021 15:46:43 +0000 (17:46 +0200)
teshsuite/s4u/ns3-from-src-to-itself/ns3-from-src-to-itself.cpp
teshsuite/s4u/ns3-simultaneous-send-rcv/ns3-simultaneous-send-rcv.cpp

index ca8436c..96f8b27 100644 (file)
@@ -15,12 +15,10 @@ const int payload            = 1000;
 const int nb_message_to_send = 5;
 const int nb_sender = 2;
 
-int nb_messages_sent = 0;
-
-simgrid::s4u::Mailbox* box = simgrid::s4u::Mailbox::by_name("test");
-
 static void test_send()
 {
+  simgrid::s4u::Mailbox* box  = simgrid::s4u::Mailbox::by_name("test");
+  static int nb_messages_sent = 0;
   for (int nb_message = 0; nb_message < nb_message_to_send; nb_message++) {
     nb_messages_sent++;
     XBT_VERB("start sending test #%i", nb_messages_sent);
@@ -31,6 +29,7 @@ static void test_send()
 
 static void test_receive()
 {
+  simgrid::s4u::Mailbox* box = simgrid::s4u::Mailbox::by_name("test");
   for (int nb_message = 0; nb_message < nb_message_to_send * nb_sender; nb_message++) {
     XBT_VERB("waiting for messages");
     auto ptr = box->get_unique<int>();
index e982860..e90bdc4 100644 (file)
@@ -16,11 +16,9 @@ const int nb_message_to_send = 5;
 const double sleep_time      = 5;
 const int nb_sender          = 100;
 
-int nb_messages_sent = 0;
-
-simgrid::s4u::Mailbox* box = simgrid::s4u::Mailbox::by_name("test");
-
 static void test_send(){
+  simgrid::s4u::Mailbox* box  = simgrid::s4u::Mailbox::by_name("test");
+  static int nb_messages_sent = 0;
   for (int nb_message = 0; nb_message < nb_message_to_send; nb_message++) {
     nb_messages_sent++;
     XBT_VERB("start sending test #%i", nb_messages_sent);
@@ -31,6 +29,7 @@ static void test_send(){
 }
 
 static void test_receive(){
+  simgrid::s4u::Mailbox* box = simgrid::s4u::Mailbox::by_name("test");
   for (int nb_message = 0; nb_message < nb_message_to_send * nb_sender; nb_message++) {
     XBT_VERB("waiting for messages");
     auto ptr = box->get_unique<int>();