如何在您的应用程序中找到递归?

Ang*_*ker 6 c# regex recursion

我的c#服务有一个内部.net执行错误,指向递归问题(例如堆栈溢出).问题是服务非常大,所以我很难找到实际发生递归的位置.

有大规模正则表达式mojo的人可以用搜索字符串连接我,找到我需要的东西吗?

Cog*_*eel 6

在一般情况下,这是一个无法回答的问题.除了最简单的例子(例如直接调用自身的函数)之外,没有办法分析程序并确定是否发生递归.您只需要开始调试调试器或其他运行时工具.

这是暂停问题的一个例子.


ros*_*oft 5

在某些情况下不容易找到递归,例如:

method1() {
  method2()
}

method2() {
  method1()
}
Run Code Online (Sandbox Code Playgroud)

所以一个正则表达式可能无法帮助你找到它,除非它是一个微不足道的案例.