我的应用程序突然在应用程序事件查看器中将其解析出来:
EventType clr20r3,P1 w3wp.exe,P2 6.0.3790.3959,P3 45d6968e,P4 app_code.ahowircm,P5 0.0.0.0,P6 4b167253,P7 30,P8 0,P9 system.stackoverflowexception,P10 NIL.
自昨天以来没有任何改变,一切都运转良好.服务器在Windows Server 2003上运行一些.net 2.0 webservices.!!!!!
编辑:
另外我在两台服务器上运行它,2008R2和2003,完全相同的代码,在2008R2上工作正常,但在2003年它停止了应用程序池.
以下类由另一个程序使用.访问它时,它会抛出StackOverFlowError.这是我在大学时必须做的一个后缀计算器的一部分.
非常感谢任何帮助,谢谢你提前.我是Java的新手,我不知道该怎么做.
码:
import java.util.Queue;
import java.util.Stack;
public class MyPostfixMachine implements PostfixMachineInterface {
MyMathOperations mmo = new MyMathOperations();
MyPostfixMachine mpm = new MyPostfixMachine();
public String evaluate(Queue q) {
if (q.isEmpty()) {//if the input is empty, terminate the program
System.exit(0);
}
if (q.size() == 1) {//if there is only one number in the queue, return it as the solution
if (mpm.isParsableToDouble(String.valueOf(q.remove()))) {
return String.valueOf(q.remove());
}
}
Stack<String> finalxp = new Stack<String>();//create an empty stack
if (mpm.isParsableToDouble(String.valueOf(q.remove()))) {//if first element of queue …Run Code Online (Sandbox Code Playgroud) int main(void) {
problem2();
}
void doit2(void) {
int overflowme[16];
//overflowme[37] =0;
}
void problem2(void) {
int x = 42;
doit2();
printf("x is %d\n", x);
printf("the address of x is 0x%x\n", &x);
}
Run Code Online (Sandbox Code Playgroud)
有人会帮我理解为什么溢出[37] = 0; 从doit2函数将覆盖x的值?(请在说明中包含函数doit2的程序计数器和帧指针)谢谢!
它每次都在x86 windows机器上工作(好吧!),项目属性 - >配置属性 - > C/C++ - >代码生成 - >基本运行时检查设置为"默认".所以这不是一个未定义的行为.
嗨任何人可以请解释我为什么是这样的代码片段给我的StackOverflowError我很感激,如果你能解释发生了什么事时,instanceObj初始化和调用构造函数ObjectTest和java.lang.Object继承构造函数.在我看来ObjectTest构造函数循环一遍又一遍.但我不知道确切的原因?所以任何建议......
public class ObjectTest {
public ObjectTest() {
}
ObjectTest instanceObj = new ObjectTest();
public static void main(String[] args) {
ObjectTest localObj = new ObjectTest();
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试解决一个需要递归回溯的问题,我的解决方案会产生堆栈溢出错误.我知道这个错误通常表示终止条件不好,但我的终止条件似乎是正确的.除了可能导致堆栈溢出错误的错误终止条件之外还有什么吗?我怎么能弄清楚问题是什么?
编辑:抱歉试图发布代码,但它太丑了..
刚刚开始重新学习Haskell(在大学做过,但忘了大部分)并且认为我会实现一个斐波那契函数来开始.但是,我不断得到一个stackoverflow,即使是非常小的n.
有人能发现我的功能有什么问题吗?
fib :: Integer -> Integer
fib 0 = 0
fib 1 = 1
fib n = fib (n-1) + fib (n+1)
Run Code Online (Sandbox Code Playgroud) 我正在编写一个程序,我需要运行许多模拟,速度是游戏的名称.我目前正在使用在堆上分配的一个长线性数组并自己计算尺寸并直接从我编制的索引中提取.一位同事编写了一个类似的程序,并且使用5D阵列提高了速度.我知道将它作为向量分配会非常容易,但据我所知,由于边界检查使用向量会产生速度成本.
我的问题是为什么会发生这种情况?
这编译并运行良好:
int Array[20][20][20][20][20];
int main()
{
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这会编译但在包装在类中时抛出堆栈溢出异常:
class Foo
{
int Array[20][20][20][20][20];
};
int main()
{
Foo foo;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我尝试在Visual Studio 2005链接器选项中修改我的堆栈大小以及更改"启用更大地址"选项,但似乎没有任何区别.
public class ModelInfo
{
public int AssignedCount { get; set; }
public int UnassignedCount { get; set; }
public int TotalCount { get { return UnassignedCount + TotalCount; } }
}
Run Code Online (Sandbox Code Playgroud)
*编辑:* 我意识到当我把这个代码放在SO中时,TotalCount属性正在添加UnassignedCount + TotalCount(我的意思是将其他两个计数加在一起).有人可以提供一个足够的解释为什么SO错误发生?我的意思是,低级别的东西.
Stackoverflowing!
我试图用谷歌地图和标记写简单的例子,但我面临着错误:
Uncaught RangeError: Maximum call stack size exceeded
Run Code Online (Sandbox Code Playgroud)
JS:
$(document).ready(function() {
var map;
var elevator;
var myOptions = {
zoom: 1,
center: new google.maps.LatLng(0, 0),
mapTypeId: 'terrain'
};
map = new google.maps.Map($('#map_canvas')[0], myOptions);
var markers = [];
coords = [{
lat: 55,
lng: 37
}];
for (var x = 0; x < coords.length; x++) {
var latlng = new google.maps.LatLng(x.lat, x.lng);
var marker = new google.maps.Marker({
position: latlng,
map: map
});
markers.push(marker);
}
fitBounds();
function fitBounds() {
var bounds = …Run Code Online (Sandbox Code Playgroud) 我正在尝试用Java做一个简单的代码:我有一个名为"Bloc"的类,它创建了块(正方形),在其中我创建了一个随机宽度(largeur),以及一个2 int之间的随机高度(hauteur) ,我创建一个随机数的块(nombreBloc).我还创建了一个ArrayList来放置每个块,看看我剩下多少.
所以,我做了一个名为"insererBlocList"的函数(将块插入到ArrayList中),它创建块的"nombreBloc"(numberBloc)并将其放入ArrayList中.
我有一个图形界面,其中我有一个用于窗口的面板,在其中我有另外两个面板:其中一个是将我创建的每个块放入其中.
这是我的问题,我的函数"insererBlocList"里面有一个"StackOverflowError",这意味着有一个无限循环,但在写完代码路径之后,我看不出我在哪里犯了错误......这里是代码:
集团类:
public class Bloc extends JPanel{
private int hauteur, largeur, nombreBloc;
private boolean premierPassage = true;
private ArrayList<Bloc> listeBlocRestant;
private Random rand = new Random();
public Bloc() {
this.hauteur = 10 + rand.nextInt(50 - 10);
this.largeur = 10 + rand.nextInt(50 - 10);
listeBlocRestant = new ArrayList<Bloc>();
if(premierPassage == true) {
this.nombreBloc = 5 + rand.nextInt(30 - 5);
insererBlocList();
}
}
public ArrayList<Bloc> insererBlocList(){
premierPassage = false;
for(int i=0; i<nombreBloc; i++) {
Bloc bloc = …Run Code Online (Sandbox Code Playgroud) stack-overflow ×10
java ×4
.net ×1
arrays ×1
backtracking ×1
c ×1
c# ×1
c++ ×1
calculator ×1
fibonacci ×1
haskell ×1
instance ×1
javascript ×1
local ×1
object ×1
panel ×1
queue ×1
recursion ×1
web-services ×1