像Java中的http请求一样发送async / await .NET 4.5?

时间:2013-06-27 05:44:38

标签: java spring-mvc asynchronous

是否存在java等效的以下asynch / await .NET 4.5代码来处理httprequests或实际上任何调用的方法调用)?

public async Task<System.IO.TextReader> DoRequestAsync(string url)
{
    HttpWebRequest req = HttpWebRequest.CreateHttp(url);
    req.AllowReadStreamBuffering = true;
    var tr = await DoRequestAsync(req);  // <- Wait here and even do some work if you want.
    doWorkWhilewaiting();                // ...look ma' no callbacks.
    return tr;
}

我打算在控制器/ GET方法中调用它(从第3个partyl REST端点获取数据),而且我是java世界的新手。

非常感谢任何信息。

1 个答案:

答案 0 :(得分:3)

不,Java没有像async / await这样的东西。 java.util.concurrent包中包含各种有用的并发类(对于线程池,生产者/消费者队列等),但实际上它是C#5中的语言支持,将所有内容联系在一起......这就是尚未出现在Java中。

据我所知,它不是Java 8计划的一部分 - 尽管像方法文字和lambda表达式这样的东西至少会使显式回调方法比在Java 7中简单得多。