进程完成,退出代码 -1073741571 [英] Process finished with exit code -1073741571

查看:62
本文介绍了进程完成,退出代码 -1073741571的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个递归函数,它正在寻找欧拉路径.我不认为函数的定义是相关的(但如果有人这么认为,我也会粘贴).

I have a recursion function which is finding Eulerian Path. I do not think that the definition of the function is relevant (but if someone thinks so, I will paste it as well).

问题是当我用大图运行函数时,我收到以下众所周知的错误:RuntimeError: maximum recursioncmp 中超出的深度

The problem is that when I am running the function with a big graph, I receive the following well known error: RuntimeError: maximum recursion depth exceeded in cmp

即使没有上述问题,我知道我需要使用以下命令增加递归限制

Even without the above-mentioned question, I know that I need to increase recursion limit with the following commands

import sys
sys.setrecursionlimit(5000)

问题是,无论我使用什么数字,我要么得到最大递归错误,要么我的程序只是停止而屏幕上没有输出但是:进程已完成,退出代码为 -1073741571.我试图用谷歌搜索这段代码,我能找到的唯一问题是 Ruby 中的问题.知道我如何克服这个问题.

The problem is that when no matter what number am I using I either get the Maximum recursion error or my program just halts with no output on the screen but: Process finished with exit code -1073741571. I tried to google for this code and the only problem I was able to find was the problem in Ruby. Any idea how I can overcome this problem.

如果这是相关的,我使用的是 64 位 Windows 8,我有足够的内存和 64 位 python.

If this is relevant I am on Windows 8 64 bit, I have plenty of RAM and I have 64bit python.

由于某种原因,这个问题最近受到了一些关注,我想强调一下,我无法找到该问题的解决方案.在绝望地试图解决这个问题之后,我放弃了并没有递归地重写了它.这也很烦人,但我重写整个算法的时间比我研究这个问题的时间少得多.我还想提一下,我没有以前的递归代码,所以我将无法复制问题.

Just because for some reason this question received some attention recently, I want to highlight that I was not able to find solution to the problem. After hopelessly trying to solve the problem I gave up and rewrote it without recursion. Also it was annoying, but I spent much less time rewriting the whole algorithm, than I spent investigating this problem. I also want to mention that I do not have previous recursion code, so I will not be able to replicate the problem.

推荐答案

那是微软堆栈溢出/堆栈耗尽"错误代码 0xC00000FD 的有符号整数表示.

That is the signed integer representation of Microsoft's "stack overflow/stack exhaustion" error code 0xC00000FD.

您可以尝试按照此处的答案中所述增加可执行文件的堆栈大小:如何克服 Visual Studio 的堆栈大小问题(使用大数组运行 C 代码)

You might try increasing your executable's stack size as described in the answer here: How to overcome Stack Size issue with Visual Studio (running C codes with big array)

任何时候你在 windows 中看到奇怪的、大的负退出代码,将它们转换为十六进制,然后在 ntstatus 错误代码中查找它们 http://msdn.microsoft.com/en-us/library/cc704588.aspx

Anytime you see strange, large negative exit codes in windows, convert them to hex and then look them up in the ntstatus error codes http://msdn.microsoft.com/en-us/library/cc704588.aspx

您也可以使用 MS 错误查找工具 在本地甚至自动查找此类代码.Microsoft 和第三方都存在其他类似的工具.

You may also use the MS Error Lookup Tool to find such codes locally, or even automatically. Other, similar tools exist both by Microsoft and third parties.

这篇关于进程完成,退出代码 -1073741571的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆