/*private static void EndSum(IAsyncResult ar) * { * AsyncSumDel del = (AsyncSumDel)ar.AsyncState; * UInt64 res = del.EndInvoke(ar); * Console.WriteLine("Сумма = " + res); * }*/ private static void EndSum(IAsyncResult ar) { AsyncFibDel del = (AsyncFibDel)ar.AsyncState; UInt64 res = del.EndInvoke(ar); Console.WriteLine("Fib = " + res); // Console.WriteLine(Thread.CurrentThread.ManagedThreadId); }
/*public static UInt64 FibResult(UInt64 n) * { * // Console.WriteLine(Thread.CurrentThread.ManagedThreadId); * return Fib(n); * }*/ private static IAsyncResult BuildTask(ulong pos, string tag, List <int> localResult) { AsyncFibDel del = Fib; return(del.BeginInvoke(pos, (ar) => { AsyncFibDel func = (AsyncFibDel)ar.AsyncState; UInt64 res = func.EndInvoke(ar); Console.WriteLine($"pos = {pos}; tag = {tag}; res = {res}"); }, del)); }