From b9771b85d4f543af78465985e6350c0ca57f4c70 Mon Sep 17 00:00:00 2001 From: Stefan Zabka Date: Thu, 11 Jun 2020 23:24:02 +0200 Subject: Broken Mess --- 04_exercise/main.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) (limited to '04_exercise/main.c') diff --git a/04_exercise/main.c b/04_exercise/main.c index 18fb21e..e73dd98 100644 --- a/04_exercise/main.c +++ b/04_exercise/main.c @@ -5,22 +5,23 @@ static TASK(long, fib, long) -long fib(long n) { - if (n <= 1) - return n; - - fib_fut *a = fibAsync((fib_fut[]) { fibFuture(n - 1) }); - fib_fut *b = fibAsync((fib_fut[]) { fibFuture(n - 2) }); - - return fibAwait(a) + fibAwait(b); + long fib(long n) { + if (n <= 1) + return n; + + fib_fut *a = fibAsync((fib_fut[]){fibFuture(n - 1)}); + fib_fut *b = fibAsync((fib_fut[]){fibFuture(n - 2)}); + + return fibAwait(a) + fibAwait(b); } int main() { - if (tpInit(8) != 0) - perror("Thread Pool initialization failed"), exit(-1); - atexit(&tpRelease); - for (long i = 0; i <= 20; ++i) - printf("fib(%2li) = %li\n", i, fib(i)); - - return 0; + setvbuf(stdout, NULL, _IONBF, 0); + if (tpInit(1) != 0) + perror("Thread Pool initialization failed"), exit(-1); + atexit(&tpRelease); + for (long i = 0; i <= 20; ++i) + printf("fib(%2li) = %li\n", i, fib(i)); + + return 0; } -- cgit v1.2.3-54-g00ecf