-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
某些情况下陷入死循环通过重启解决(实施自动化异常处理和重置恢复策略提案) #576
Comments
如果识别有问题,重启之后还是会在相同的位置以相同的方式卡住 |
并不会的,试过很多次手动重启可以解决问题。而且除了重启 mower 还有重启方舟,两种重启一起使用基本上能恢复大部分卡住的情况 |
你好,我说的是“如果识别有问题”。 |
你标题也写了是“某些情况”吧 |
而且你说的已经部分实装了。。。 |
这个commit之后还遇到过卡在商店里的情况吗? |
mower现在很多代码的写法都有问题,但好的写法是什么样的,还在探索 |
mower根本没有计时线程,不知道你在说什么 |
这个有 commit 点近,如果之后出现了我再回这里反馈吧。但是前一周还有出现过卡在干员详情页的。
我在说 schedule 线程在 sleep 的过程中出于某些未知原因到原本预计结束 sleep 的时候也没有恢复运作 |
群里两句话说清楚的事,你非要搁这写小作文 |
感谢修复;这个问题我遇到有一个来月了,但是一直也只是事后发现卡住了之后手动重启方舟和 mower 来解决,没有提 issue 或者去频道里报告(我相信还存在很多其他人遇到的大大小小的 bug,但是没有被提出解决的,可能是因为一开始几次以为是偶尔的个例,或者忙着没时间,还有用户不习惯反馈 bug),因此像我主楼里说的这样,对每个具体的 bug 情景做专门针对的适配和修复可能是有一些滞后性的,从发生到用户第一次提出,再到开发者处理修复,所以我才希望能有一个相对全面的、能在等到每个问题的具体解决方案之前暴力修复大部分卡死情景的临时解决方案,这样子如果一个人要出远门的时候就可以把 mower 挂在家里的电脑上,不用担心哪天卡死了之后就一直没法恢复。 |
这个函数不是才7行嘛,你的打字的功夫早看完了呀 |
没有这个线程 |
网页面板,远程桌面 |
你有没有明白,这个bug是专门写出来的,那个时候我们没有懂识别的,临时凑合一下 |
有问题不想着解决,却想办法绕过去,是什么鬼 |
我不是说这一个 bug,是所有的可以通过重启方舟或者 mower 来恢复的 bug……在等待每个问题的针对性解决之前可以先暂时性的在陷入卡死之后提供恢复机制。
所以为什么就一定要依赖外部工具呢,又要 helper 又要远程桌面等,如果 mower 本身能处理自己的异常不是更好……至少我如果加些这样的功能不会有坏处吧?用户也可以选择自己开或者不开?你到现在也没说我的提案到底有什么不可行或者负面影响啊,只是在说你觉得“扯”或者你觉得没有必要,那有了总没坏处吧?这点你可以确认一下吗?
base_scheduler…… 啊啊啊 过几天 qq 再找你…今天是真没空了 😮💨 |
现在有连战,等着作战很有可能漏单,怎么就没坏处了 |
mower相对于明日方舟来说本身就是外部工具 |
之前你完全没提加选项的事啊 |
你也没说过啊,
第一段讲mower的现状,还不全面
第二第三段讲识别 |
你这些都不说,包括你说的不想借助mowerhelper也是刚才才说的,我自然觉得很扯啊 |
你要是能像这个Issue这样,把话说明白,那也行,但你发的这俩都不太行,我是觉得看起来有困难 |
mower 当前的异常处理机制不是非常健壮,运行时间长了很容易走进各种 deadend。目前有蛮多情况会导致 mower 陷入死循环的,比方说永远卡在没能正确识别、或者没有预设处理逻辑的界面,或者计时线程出错整个 mower 直接永久休眠不再被定时任务唤醒运行。这种时候往往需要手动重启来恢复运作。
有时候挂着很长时间忘了看,偶然再打开 mower 和模拟器的时候会发现已经卡在某个界面好几个小时甚至几天了,体力早满了全员也注意力涣散了,这时候手动重启下也就算了,但有时候出个远门好长一段时间没法手动恢复,家里电脑上 mower 就一直卡在那里什么的就更麻烦了。因此我觉得如果能有个自动化的恢复机制会较有帮助。
存在大量各不相同的、会导致此类死循环的情景(见 #489 #488 #565 #574 等等,我自己还遇到过许多另外的比如意外进入并卡死在商店页、抽卡页、干员详情、编队页等),为每个错误场景人工一一添加处理逻辑可能还需要较长开发和等待周期,这里计划先做一个较为泛用的简易解决方案作为一个临时的 stopgap
我目前关于实现这项功能的想法大概是这样:
设置项
触发条件和重启逻辑
你们看这个可行吗?抛砖引玉了,大家有什么更好的意见请一起分享讨论!
我这阵子还有点其他事要忙,忙完之后开工搞这个,大家看看这个提的合不合理有没有其他人有需求的,做完之后要不要 merge 过来主仓库(以及有没有人有空顺便把这个做了啊,我想偷个懒(。)
The text was updated successfully, but these errors were encountered: