示例#1
0
        public async Task FireAndForgetTask_ShouldCallDelegateWhenDelegateIsSpecified()
        {
            Task      taskWithException = Task.FromException <Exception>(new Exception("Should throw an exception"));
            ValueTask valueTask         = new ValueTask(taskWithException);

            valueTask.FireAndForget(onException: (ex) =>
            {
                Assert.NotNull(ex);
                Assert.Equal("Should throw an exception", ex.Message);
            });
        }
示例#2
0
        public async Task FireAndForget()
        {
            Task      asyncTask = Task.Delay(1000);
            ValueTask valueTask = new ValueTask(asyncTask);

            valueTask.FireAndForget();

            Assert.False(asyncTask.IsCompletedSuccessfully);
            await asyncTask;

            Assert.True(asyncTask.IsCompletedSuccessfully);
        }