using System; using System.Diagnostics; using System.Threading.Tasks; namespace Samples { class MessagePrinterSample { private delegate Task MessagePrinter(string message); private static async Task PrintMessageAsync(string message) { await Task.Delay(1000); Console.WriteLine(message); } public static void Sample() { MessagePrinter printer = PrintMessageAsync; Console.WriteLine("Start..."); printer("This is first message"); printer("This is second message"); printer("This is third message"); Console.WriteLine("Finish..."); } } }