• 《C#并发编程经典实例》学习笔记—2.2 返回完成的任务


    问题:

    如何实现一个具有异步签名的同步方法。

    从异步接口或基类继承代码,但希望用同步方式实现方法。
    解释一下所谓的异步接口和异步基类。例如如下代码

    interface IMyAsyncInterface
    {
        Task<int> GetValueAsync();
    }
    

    即,接口和基类中包含了以Task为返回结果的方法,此接口或基类,即为异步接口或异步基类。

    同步方式实现Task方法

    class Class1 : IMyAsyncInterface
    {
        Task<int> GetValueAsync() 
        {
            return Task.FromResult(1);
        }
    }
    

    或者

    class Class1 : IMyAsyncInterface
    {
            Task<int> GetValueAsync()
            {
                var tcs = new TaskCompletionSource<int>();
                tcs.SetResult(1);
                return tcs.Task;
            }
    }
    
  • 相关阅读:
    NYOJ 10 skiing DFS+DP
    51nod 1270 数组的最大代价
    HDU 4635 Strongly connected
    HDU 4612 Warm up
    POJ 3177 Redundant Paths
    HDU 1629 迷宫城堡
    uva 796
    uva 315
    POJ 3180 The Cow Prom
    POJ 1236 Network of Schools
  • 原文地址:https://www.cnblogs.com/AlienXu/p/9931263.html
Copyright © 2020-2023  润新知