[drmaa-wg] Wait Type

Daniel Templeton Dan.Templeton at Sun.COM
Fri Feb 11 05:27:35 CST 2005


Here's my proposal for the new wait structure:

typedef struct drmaa_job_info_s drmaa_job_info_t;

We then then add the functions:

void drmaa_release_job_info(drmaa_job_info_t* info);

int drmaa_wreason(char *reason, size_t reason_len, drmaa_job_info_t 
*info, char* error_diagnosis, size_t error_diag_len);

int drmaa_wrusage(drmaa_attr_values_t **rusage, drmaa_job_info_t *info, 
char* error_diagnosis, size_t error_diag_len);

int drmaa_wjobid(char *jobid, size_t jobid_len, drmaa_job_info_t *info, 
char* error_diagnosis, size_t error_diag_len);

and change existing functions like this:

int drmaa_wait(const char *job_id, signed long timeout, drmaa_job_info_t 
**info, char *error_diagnosis, size_t error_diag_len);

int drmaa_wifexited(int *exited, drmaa_job_info_t *info, char* 
error_diagnosis, size_t error_diag_len);

int drmaa_wexitstatus(int *exit_status, drmaa_job_info_t *info, char* 
error_diagnosis, size_t error_diag_len);

int drmaa_wifsignaled(int *signaled, drmaa_job_info_t *info, char* 
error_diagnosis, size_t error_diag_len);

int drmaa_wtermsig(char *signal, size_t signal_len, drmaa_job_info_t 
*info, char* error_diagnosis, size_t error_diag_len);

int drmaa_wcoredump(int *core_dumped, drmaa_job_info_t *info, char* 
error_diagnosis, size_t error_diag_len);

int drmaa_wifaborted(int *aborted, drmaa_job_info_t *info, char* 
error_diagnosis, size_t error_diag_len);


I put the job_id_out and rusage into the new structure because that's 
how it's handled in the OO specs.  If the consensus is that we'd rather 
keep them as individual parameters, we can do that too.  I would argue 
that the job_id_out definitely belong in the new structure.  Barring 
what the OO specs do, I'm not sure how I feel about rusage.
The error codes and function descriptions would obviously mirror those 
of the peer functions.

Daniel





More information about the drmaa-wg mailing list