int main(int argc, char * argv[]) { const myint_t START = atol(argv[1]); const myint_t END = atol(argv[2]); myint_t sum = 0; for (myint_t n = START; n <= END ; n++) { sum += calc_f(n); } printf( "Sum == %lld\n", sum); fflush(stdout); return 0; }
//Func: in_thread() //This function is used in the call for pthread_create() //it calls other function and set up a mission for each thread void* in_thread(void *in_targv){ struct timeval t_start; struct timeval t_end; thread_argv *ad_targv = in_targv; thread_argv targv = *ad_targv; gettimeofday(&t_start,NULL); update_loc(targv.num_astr, ad_targv->astr, *(targv.t_info)); calc_f(targv.num_astr, ad_targv->astr, *(targv.t_info)); total_f(targv.num_astr, ad_targv->astr, *(targv.t_info)); calc_acc(targv.num_astr, ad_targv->astr, *(targv.t_info)); calc_velo(targv.num_astr, ad_targv->astr, *(targv.t_info), targv.t); calc_s(targv.num_astr, ad_targv->astr, *(targv.t_info), targv.t); // mutex_lock pls - I like to live dangerously gettimeofday(&t_end,NULL); ad_targv->proc_t = t_end.tv_usec - t_start.tv_usec; pthread_barrier_wait(&barrier); return NULL; }