internal static Task <IEnumerable <int> > GetFibonacciAsync(SampleFuncsSafeHandle handle, int n)
        {
            var tcs = fibonacciCallbacks.GetOrAdd(n, new TaskCompletionSource <IEnumerable <int> >());

            Task.Run(() => GetFibonacci(handle, n, SampleFuncsWrapper.GetFibonacciCallbackDelegate));

            return(tcs.Task);
        }
Exemple #2
0
 public SampleFuncs()
 {
     handle = SampleFuncsWrapper.CreateSampleFuncs();
 }
 static extern void GetFibonacci(SampleFuncsSafeHandle handle, int n, GetFibonacciCallback callback);
 internal static extern void ReleaseSampleFuncs(SampleFuncsSafeHandle handle);