X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/daf7628852dc8c5b944f2667cc74d8ce75328aed..addf1684268e6863fc702567a8b47a090400428f:/testsuite/xbt/context_usage.c diff --git a/testsuite/xbt/context_usage.c b/testsuite/xbt/context_usage.c index 749fbaf959..60798a142c 100644 --- a/testsuite/xbt/context_usage.c +++ b/testsuite/xbt/context_usage.c @@ -4,7 +4,7 @@ #include "xbt.h" #include "xbt/context.h" -#include "portable.h" /* To know whether we're using threads or context */ +#include "portable.h" /* To know whether we're using threads or context */ #include "xbt/fifo.h" xbt_context_t cA = NULL; @@ -12,28 +12,28 @@ xbt_context_t cB = NULL; xbt_context_t cC = NULL; xbt_fifo_t fifo = NULL; -void print_args(int argc, char** argv); -void print_args(int argc, char** argv) +void print_args(int argc, char **argv); +void print_args(int argc, char **argv) { - int i ; + int i; printf("args=<"); - for(i=0; i\n"); } -int fA(int argc, char** argv); -int fA(int argc, char** argv) +int fA(int argc, char **argv); +int fA(int argc, char **argv) { printf("Here is fA: "); - print_args(argc,argv); + print_args(argc, argv); /* printf("\tContext A: Yield\n"); */ /* xbt_context_yield(); // FIXME: yielding to itself fails, no idea why */ - + printf("\tContext A: Push context B\n"); - xbt_fifo_push(fifo,cB); + xbt_fifo_push(fifo, cB); printf("\tContext A: Yield\n"); xbt_context_yield(); @@ -43,17 +43,17 @@ int fA(int argc, char** argv) return 0; } -int fB(int argc, char** argv); -int fB(int argc, char** argv) +int fB(int argc, char **argv); +int fB(int argc, char **argv) { printf("Here is fB: "); - print_args(argc,argv); + print_args(argc, argv); -/* printf("\tContext B: Yield\n"); */ -/* xbt_context_yield(); */ + printf("\tContext B: Yield\n"); + xbt_context_yield(); printf("\tContext B: Push context A\n"); - xbt_fifo_push(fifo,cA); + xbt_fifo_push(fifo, cA); printf("\tContext B: Yield\n"); xbt_context_yield(); @@ -63,11 +63,11 @@ int fB(int argc, char** argv) return 0; } -int fC(int argc, char** argv); -int fC(int argc, char** argv) +int fC(int argc, char **argv); +int fC(int argc, char **argv) { printf("Here is fC: "); - print_args(argc,argv); + print_args(argc, argv); printf("\tContext C: Yield\n"); xbt_context_yield(); @@ -81,7 +81,7 @@ int fC(int argc, char** argv) #pragma argsused #endif -int main(int argc, char** argv) +int main(int argc, char **argv) { xbt_context_t context = NULL; @@ -90,31 +90,32 @@ int main(int argc, char** argv) printf("XXX Using threads as a backend.\n"); #else /* use SUSv2 contexts */ printf("XXX Using SUSv2 contexts as a backend.\n"); - printf(" If it fails, try another context backend.\n For example, to force the pthread backend, use:\n ./configure --with-context=pthread\n\n"); + printf + (" If it fails, try another context backend.\n For example, to force the pthread backend, use:\n ./configure --with-context=pthread\n\n"); #endif - + xbt_init(&argc, argv); - cA = xbt_context_new(fA, NULL, NULL, NULL, NULL, 0, NULL); - cB = xbt_context_new(fB, NULL, NULL, NULL, NULL, 0, NULL); - cC = xbt_context_new(fC, NULL, NULL, NULL, NULL, 0, NULL); + cA = xbt_context_new("A", fA, NULL, NULL, NULL, NULL, 0, NULL); + cB = xbt_context_new("B", fB, NULL, NULL, NULL, NULL, 0, NULL); + cC = xbt_context_new("C", fC, NULL, NULL, NULL, NULL, 0, NULL); fifo = xbt_fifo_new(); printf("Here is context 'main'\n"); - printf("\tPush context 'A' (%p) from context 'main'\n",cA); - xbt_fifo_push(fifo,cA); + printf("\tPush context 'A' (%p) from context 'main'\n", cA); + xbt_fifo_push(fifo, cA); xbt_context_start(cA); - printf("\tPush context 'B' (%p) from context 'main'\n",cB); - xbt_fifo_push(fifo,cB); + printf("\tPush context 'B' (%p) from context 'main'\n", cB); + xbt_fifo_push(fifo, cB); xbt_context_start(cB); - printf("\tPush context 'C' (%p) from context 'main'\n",cC); - xbt_fifo_push(fifo,cC); + printf("\tPush context 'C' (%p) from context 'main'\n", cC); + xbt_fifo_push(fifo, cC); xbt_context_start(cC); - while((context=xbt_fifo_shift(fifo))) { + while ((context = xbt_fifo_shift(fifo))) { printf("Context main: schedule\n"); xbt_context_schedule(context); } @@ -123,7 +124,8 @@ int main(int argc, char** argv) xbt_fifo_free(fifo); printf("\tExit & cleaning living threads\n"); xbt_exit(); - - cA=cB=cC=NULL; + + cA = cB = cC = NULL; + printf("Context main: Bye\n"); return 0; }