Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
last call to MSG_hosts_as_dynar -> deprecate !
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Mon, 30 Mar 2020 15:34:52 +0000 (17:34 +0200)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Mon, 30 Mar 2020 15:34:52 +0000 (17:34 +0200)
include/simgrid/msg.h
src/bindings/java/jmsg.cpp
src/msg/msg_legacy.cpp

index e38fd6e..8204478 100644 (file)
@@ -95,7 +95,7 @@ XBT_PUBLIC size_t MSG_get_host_number();
  * The host order in the returned array is generally different from the host creation/declaration order in the XML
  * platform (we use a hash table internally).
  */
-XBT_PUBLIC xbt_dynar_t MSG_hosts_as_dynar();
+XBT_ATTRIB_DEPRECATED_v330("Please use sg_host_list()") XBT_PUBLIC xbt_dynar_t MSG_hosts_as_dynar();
 
 /** @brief Returns the name of this host */
 XBT_PUBLIC const char* MSG_host_get_name(const_sg_host_t host);
index 3b06e2e..80618e0 100644 (file)
@@ -142,14 +142,14 @@ JNIEXPORT void JNICALL JNICALL Java_org_simgrid_msg_Msg_run(JNIEnv* env, jclass)
 
   XBT_INFO("MSG_main finished; Terminating the simulation...");
   /* Cleanup java hosts */
-  xbt_dynar_t hosts = MSG_hosts_as_dynar();
-  for (unsigned long index = 0; index < xbt_dynar_length(hosts) - 1; index++) {
-    auto const* msg_host = xbt_dynar_get_as(hosts, index, msg_host_t);
-    jobject jhost = (jobject) msg_host->extension(JAVA_HOST_LEVEL);
+  sg_host_t* hosts  = sg_host_list();
+  size_t host_count = sg_host_count();
+  for (size_t index = 0; index < host_count - 1; index++) {
+    jobject jhost = (jobject)hosts[index]->extension(JAVA_HOST_LEVEL);
     if (jhost)
       jhost_unref(env, jhost);
   }
-  xbt_dynar_free(&hosts);
+  xbt_free(hosts);
 
   /* Cleanup java storages */
   for (auto const& elm : java_storage_map)
index 6ddae74..26693aa 100644 (file)
@@ -299,7 +299,7 @@ sg_size_t MSG_storage_write(sg_storage_t storage, sg_size_t size)
 }
 
 /* ************************** hosts *************************** */
-xbt_dynar_t MSG_hosts_as_dynar()
+xbt_dynar_t MSG_hosts_as_dynar() // XBT_ATTRIB_DEPRECATED_v330
 {
   size_t host_count = sg_host_count();
   sg_host_t* list   = sg_host_list();