int main(int argc, char *argv[]) { aligned_t ret; qthread_init(2); CHECK_VERBOSE(); assert(qthread_num_shepherds() == 2); iprintf("now to fork to shepherd 0...\n"); qthread_fork_to(checkres, (void *)0, &ret, 0); qthread_readFF(&ret, &ret); iprintf("success in forking to shepherd 0!\n"); iprintf("now to fork to shepherd 1...\n"); qthread_fork_to(checkres, (void *)1, &ret, 1); qthread_readFF(&ret, &ret); iprintf("success in forking to shepherd 1!\n"); iprintf("now to fork the migrant...\n"); qthread_fork(migrant, NULL, &ret); iprintf("success in forking migrant!\n"); qthread_readFF(&ret, &ret); iprintf("migrant returned successfully!\n"); return 0; }
int main(int argc, char *argv[]) { CHECK_VERBOSE(); assert(qthread_init(1) == 0); iprintf("%i shepherds...\n", qthread_num_shepherds()); iprintf(" %i threads total\n", qthread_num_workers()); testWriteFFWaits(); }