Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
convert msg/app-masterworker
[simgrid.git] / examples / s4u / actor-suspend / s4u-actor-suspend.cpp
index 8375c01..c91a52b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2017-2019. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2017-2020. 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. */
@@ -7,7 +7,7 @@
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_actor_suspend, "Messages specific for this s4u example");
 
-/* The Lazy guy only wants to sleep, but can be awaken by the dream_master process. */
+/* The Lazy guy only wants to sleep, but can be awaken by the dream_master actor. */
 static void lazy_guy()
 {
   XBT_INFO("Nobody's watching me ? Let's go to sleep.");
@@ -31,12 +31,15 @@ static void lazy_guy()
 /* The Dream master: */
 static void dream_master()
 {
-  XBT_INFO("Let's create a lazy guy."); /* - Create a lazy_guy process */
+  XBT_INFO("Let's create a lazy guy."); /* - Create a lazy_guy actor */
   simgrid::s4u::ActorPtr lazy = simgrid::s4u::Actor::create("Lazy", simgrid::s4u::this_actor::get_host(), lazy_guy);
   XBT_INFO("Let's wait a little bit...");
   simgrid::s4u::this_actor::sleep_for(10); /* - Wait for 10 seconds */
   XBT_INFO("Let's wake the lazy guy up! >:) BOOOOOUUUHHH!!!!");
-  lazy->resume(); /* - Then wake up the lazy_guy */
+  if (lazy->is_suspended())
+    lazy->resume(); /* - Then wake up the lazy_guy */
+  else
+    XBT_ERROR("I was thinking that the lazy guy would be suspended now");
 
   simgrid::s4u::this_actor::sleep_for(5); /* Repeat two times: */
   XBT_INFO("Suspend the lazy guy while he's sleeping...");
@@ -67,7 +70,7 @@ static void dream_master()
 int main(int argc, char* argv[])
 {
   simgrid::s4u::Engine e(&argc, argv);
-  xbt_assert(argc == 2, "Usage: %s platform_file\n\tExample: %s msg_platform.xml\n", argv[0], argv[0]);
+  xbt_assert(argc == 2, "Usage: %s platform_file\n\tExample: %s ../platforms/small_platform.xml\n", argv[0], argv[0]);
 
   e.load_platform(argv[1]); /* - Load the platform description */
   std::vector<simgrid::s4u::Host*> list = e.get_all_hosts();