在 C# 中,同步(synchronous)和异步(asynchronous)操作是指在执行某个任务时,控制流程(线程)的不同方式。
会阻塞当前线程,直到操作完成并返回结果。在此期间,线程无法执行其他任务。例如,在读取文件时,如果使用同步方式,则代码会一直等待,直到文件读取完成。
则不会阻塞当前线程。相反,它会在单独的线程中执行,同时允许控制流返回到调用方,使得调用方可以继续执行其他任务。当异步操作完成后,它会将结果返回给调用方,或者通过回调或事件通知调用方。
用例:
在 C# 中,可以使用关键字 async 和 await 来创建异步代码。使用 async 关键字标记异步方法,使用 await 关键字等待异步操作完成并返回结果。
例如,以下代码演示了如何使用异步方式读取文件:
using System; using System.IO; using System.Threading.Tasks; class Program { static async Task Main() { using (var reader = new StreamReader("file.txt")) { string contents = await reader.ReadToEndAsync(); Console.WriteLine(contents); } } }
在这个示例中,使用异步方式读取文件,以便在读取文件的同时,控制流能够继续执行其他任务,而不会阻塞在文件读取上。
2016 © donet5.comApache Licence 2.0