RestSharp 异步后台线程
RestSharp async background thread
我正在尝试使用 RestSharp 向服务器发送一些 POST 请求。然而:
- 服务器处理每个请求大约需要 20 秒
- 我不想在等待它们完成时锁定我的 GUI。
RestSharp 具有异步功能,所以我这样写:
var handler = _restClient.ExecuteAsync(request, response =>
{
if(response.IsSuccessful)
{
Console.WriteLine("Success");
}
});
我需要做的是确保这发生在一个单独的后台线程上,以免锁定 GUI,并等待每个响应,检查是否成功,然后发送下一个。
有什么建议吗?某种队列?
您可以考虑使用 async/await 以免锁定 UI 线程
var response = await _restClient.ExecuteTaskAsync(request);
if(response.IsSuccessful) {
Console.WriteLine("Success");
}
我正在尝试使用 RestSharp 向服务器发送一些 POST 请求。然而:
- 服务器处理每个请求大约需要 20 秒
- 我不想在等待它们完成时锁定我的 GUI。
RestSharp 具有异步功能,所以我这样写:
var handler = _restClient.ExecuteAsync(request, response =>
{
if(response.IsSuccessful)
{
Console.WriteLine("Success");
}
});
我需要做的是确保这发生在一个单独的后台线程上,以免锁定 GUI,并等待每个响应,检查是否成功,然后发送下一个。
有什么建议吗?某种队列?
您可以考虑使用 async/await 以免锁定 UI 线程
var response = await _restClient.ExecuteTaskAsync(request);
if(response.IsSuccessful) {
Console.WriteLine("Success");
}