public static int fibWith2Threads(int n) { if (n == 0 || n == 1) { return(1); } { FiboCallable fibon2 = new FiboCallable(n - 2); FiboCallable fibon1 = new FiboCallable(n - 1); Thread f1 = new Thread(new ThreadStart(fibon2.call)); Thread f2 = new Thread(new ThreadStart(fibon1.call)); f1.Start(); f2.Start(); f1.Join(); f2.Join(); return(fibon1.getResult() + fibon2.getResult()); } }
public static int fibWith2Threads(int n) { if (n == 0 || n == 1) return (1); { FiboCallable fibon2 = new FiboCallable(n - 2); FiboCallable fibon1 = new FiboCallable(n - 1); Thread f1 = new Thread(new ThreadStart(fibon2.call)); Thread f2 = new Thread(new ThreadStart(fibon1.call)); f1.Start(); f2.Start(); f1.Join(); f2.Join(); return (fibon1.getResult() + fibon2.getResult()); } }