前言
??最近在写WG(用的 .net core 3.1 + wpf + abp vnext),程序里大量用到了重试机制选用的是Polly组件(只知道这个...)。
遇到的问题
??在当前屏幕下根据NPC名称查找NPC的坐标,但自己的人物可能会挡住NPC,导致识别不到
需求
??重试的时候希望执行
寻求解决办法历程
百度、Bing!关键字搜索Polly
等。说实话,官方更新的速度太快了,很多教程都已经不全面了。未果
官方文档!是在是太多了,最开始只看与Execute
关键词有关的信息,没找到。然后整体看了一遍,还是没找到。
Stackoverflow 各种关键词未找到。
Google!
GitHub的Issues 最终找到了https://github.com/App-vNext/Polly/issues/38
。这种方法也想过,但觉得很不好。将要妥协的时候,在最后一楼发现
```
The ability to do this is now delivered in Polly v5.1. Polly‘s flowing with the execution becomes mutable, to allow what @YoniH and @hawkunsh requested.Context
See http://www.thepollyproject.org/2017/05/04/putting-the-context-into-polly/ for details. Shout if any questions/suggestions.
``  也就是在
4`里发现的那篇文章。
最终代码
Policy.Handle<Exception>()
.Retry(retry, (ex, retryCount, context) =>
{
//赋值 重试次数
context["retryCount"] = retryCount;
})
.Execute((ct) =>
{
//获取 重试次数
var rc = ct["retryCount"];
Console.WriteLine(rc);
}, contextData: new Dictionary<string, object> { { "retryCount", 0 } /*初始化*/ });
结束
??百度|Bing|Google
原文:https://www.cnblogs.com/dudd/p/12509668.html