我是一名普通的 C# 开发人员,但偶尔会用 Java 开发应用程序。我想知道是否有任何 Java 等效于 C# async/await?简而言之,java相当于什么:
async Task<int> AccessTheWebAsync() { HttpClient client = new HttpClient(); var urlContents = await client.GetStringAsync("http://msdn.microsoft.com"); return urlContents.Length; }
不,在 Java 中没有任何等效的 async/await - 甚至在 v5 之前的 C# 中。
在幕后构建状态机是一个相当复杂的语言功能。
Java 中对异步/并发的语言 支持相对较少,但该java.util.concurrent包包含很多有用的 类 。(不完全等同于任务并行库,但最接近它。)
java.util.concurrent