dagda_get_scalar_async(char* ID)
dagda_get_vector_async(char* ID)
dagda_get_matrix_async(char* ID)
dagda_get_string_async(char* ID)
dagda_get_file_async(char* ID)
After asking for an asynchronous transfer, the user has to wait for the end of it by calling the corresponding "dagda_wait_*" function. The arguments to these functions are the same than for the synchronous "dagda_get_*" functions. See Section 15.4.2 for more details.
dagda_wait_scalar(unsigned int transferRef, void** value,
diet_base_type_t* base_type)
dagda_wait_vector(unsigned int transferRef, void** value,
diet_base_type_t* base_type, size_t* size)
dagda_wait_matrix(unsigned int transferRef, void** value,
diet_base_type_t* base_type, size_t* nb_r,
size_t* nb_c, diet_matrix_order_t* order)
dagda_wait_string(unsigned int transferRef, char** value)
dagda_wait_file(unsigned int transferRef, char** path)
It is frequent that a plugin scheduler developer wants to make an asynchronous data transfer to the local DIET node. In that case, to wait the end of the transfers before to return can be a problem. But with the previously defined functions, DAGDA maintains a reference to the transfer thread which will be released after a call to the waiting function. To avoid DAGDA to keep infinitely these references, the user should call the "dagda_load_*" functions instead of the "dagda_get_*_async" ones.
dagda_load_scalar(char* ID)
dagda_load_vector(char* ID)
dagda_load_matrix(char* ID)
dagda_load_string(char* ID)
dagda_load_file(char* ID)