Esempio n. 1
0
        public static TaskAwaiter <Java.Lang.Object> GetAwaiter(this Task task)
        {
            var c = new AwaitableTaskCompleteListener <Java.Lang.Object> ();

            task.AddOnCompleteListener(c);

            return(c.GetAwaiter());
        }
Esempio n. 2
0
        public static System.Threading.Tasks.Task AsAsync(this Task task)
        {
            var c = new AwaitableTaskCompleteListener <Java.Lang.Object> ();

            task.AddOnCompleteListener(c);

            return(c.AwaitAsync());
        }
Esempio n. 3
0
        public static TaskAwaiter <TResult> GetAwaiter <TResult> (this Task task) where TResult : class, IJavaObject
        {
            var c = new AwaitableTaskCompleteListener <TResult> ();

            task.AddOnCompleteListener(c);

            return(c.GetAwaiter());
        }
Esempio n. 4
0
        public static System.Threading.Tasks.Task <TResult> AsAsync <TResult> (this Task task) where TResult : class, IJavaObject
        {
            var c = new AwaitableTaskCompleteListener <TResult> ();

            // The Java Task<T> returned from this call is the same task
            // so we do not have to await it
            task.AddOnCompleteListener(c);

            return(c.AwaitAsync());
        }