view Implab.Test/PromiseHelper.cs @ 204:cbb0bd8fc0d1 v2

Fixed broken Implab.Diagnostics.Interactive
author cin
date Mon, 24 Oct 2016 11:24:45 +0300
parents 4d9830a9bbb8
children d82909310094
line wrap: on
line source

using Implab.Parallels;
using System.Threading;

namespace Implab.Test {
    static class PromiseHelper {
        public static IPromise<T> Sleep<T>(int timeout, T retVal) {
            return AsyncPool.Invoke((ct) => {
                ct.CancellationRequested(ct.CancelOperation);
                Thread.Sleep(timeout);
                return retVal;
            });
        }

        public static IPromise Sleep(int timeout) {
            return AsyncPool.Invoke((ct) => {
                ct.CancellationRequested(ct.CancelOperation);
                Thread.Sleep(timeout);
                return 0;
            });
        }
    }
}