Beispiel #1
0
void SIMIX_simcall_exit(smx_synchro_t synchro)
{
  switch (synchro->type) {

    case SIMIX_SYNC_EXECUTE:
    case SIMIX_SYNC_PARALLEL_EXECUTE:
      SIMIX_post_host_execute(synchro);
      break;

    case SIMIX_SYNC_COMMUNICATE:
      SIMIX_post_comm(synchro);
      break;

    case SIMIX_SYNC_SLEEP:
      SIMIX_post_process_sleep(synchro);
      break;

    case SIMIX_SYNC_JOIN:
      SIMIX_post_process_sleep(synchro);
      break;

    case SIMIX_SYNC_SYNCHRO:
      SIMIX_post_synchro(synchro);
      break;

    case SIMIX_SYNC_IO:
      SIMIX_post_io(synchro);
      break;
  }
}
Beispiel #2
0
void SIMIX_simcall_post(smx_action_t action)
{
  switch (action->type) {

    case SIMIX_ACTION_EXECUTE:
    case SIMIX_ACTION_PARALLEL_EXECUTE:
      SIMIX_post_host_execute(action);
      break;

    case SIMIX_ACTION_COMMUNICATE:
      SIMIX_post_comm(action);
      break;

    case SIMIX_ACTION_SLEEP:
      SIMIX_post_process_sleep(action);
      break;

    case SIMIX_ACTION_SYNCHRO:
      SIMIX_post_synchro(action);
      break;

    case SIMIX_ACTION_IO:
      SIMIX_post_io(action);
      break;

    /* ****************************************************************************************** */
    /* TUTORIAL: New API                                                                        */
    /* ****************************************************************************************** */
    case SIMIX_ACTION_NEW_API:
      SIMIX_post_new_api(action);
      break;
  }
}
Beispiel #3
0
void SIMIX_request_post(smx_action_t action)
{
  switch (action->type) {

    case SIMIX_ACTION_EXECUTE:
    case SIMIX_ACTION_PARALLEL_EXECUTE:
      SIMIX_post_host_execute(action);
      break;

    case SIMIX_ACTION_COMMUNICATE:
      SIMIX_post_comm(action);
      break;

    case SIMIX_ACTION_SLEEP:
      SIMIX_post_process_sleep(action);
      break;

    case SIMIX_ACTION_SYNCHRO:
      SIMIX_post_synchro(action);
      break;

    case SIMIX_ACTION_IO:
      break;
  }
}