- SD_CHECK_INIT_DONE();
- xbt_assert0(task != NULL, "Invalid parameter");
-
- DEBUG1("Destroying task %s...", SD_task_get_name(task));
-
- __SD_task_remove_dependencies(task);
- /* if the task was scheduled or runnable we have to free the scheduling parameters */
- if (__SD_task_is_scheduled_or_runnable(task))
- __SD_task_destroy_scheduling_data(task);
- xbt_swag_remove(task,task->state_set);
-
- if (task->name != NULL)
- xbt_free(task->name);
-
- if (task->surf_action != NULL)
- surf_workstation_model->action_unref(task->surf_action);
-
- if (task->workstation_list != NULL)
- xbt_free(task->workstation_list);
-
- if (task->communication_amount)
- xbt_free(task->communication_amount);
-
- if (task->computation_amount)
- xbt_free(task->computation_amount);
-
- xbt_dynar_free(&task->tasks_before);
- xbt_dynar_free(&task->tasks_after);
- xbt_free(task);
-
- sd_global->task_number--;
-
- DEBUG0("Task destroyed.");
-}
-
-
-static XBT_INLINE SD_task_t SD_task_create_sized(const char*name,void*data,double amount,int ws_count) {
- SD_task_t task = SD_task_create(name,data,amount);
- task->communication_amount = xbt_new0(double,ws_count*ws_count);
- task->computation_amount = xbt_new0(double,ws_count);
+ SD_task_t task = SD_task_create(name, data, amount);
+ task->communication_amount = xbt_new0(double, ws_count * ws_count);
+ task->computation_amount = xbt_new0(double, ws_count);