小编nat*_*ate的帖子

SBCL错误:在Linux机器上运行Maxima时"绑定堆栈耗尽"

我知道有很多地方可以问这个问题,但我想我会在这里试试.我已经看起来已经从Maxima的好人那里得到了尽可能多的帮助.

我用SBCL运行Maxima并且一直出错;

INFO: Binding stack guard page unprotected
Binding stack guard page temporarily disabled: proceed with caution

Maxima encountered a Lisp error:

 Binding stack exhausted.

PROCEED WITH CAUTION.

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
INFO: Binding stack guard page reprotected
Run Code Online (Sandbox Code Playgroud)

我已经通过为动态空间大小和控制堆栈大小添加更大的值来修改对Maxima(其可执行文件)的调用,并且我已经查看了./.../sbcl-help以获取要添加到$的参数的任何想法maxima可执行文件中的MAXIMA_LISP_OPTIONS.

另外,我通常在运行它之前做这些(虽然我认为它们是不必要的,因为操作系统很聪明,也许最后一个需要摆弄);

sudo fstrim -v /
echo 3 | sudo tee /proc/sys/vm/drop_caches
echo 262144 | sudo tee /proc/sys/vm/max_map_count
Run Code Online (Sandbox Code Playgroud)

在完成Maxima工作的几次计算之后,我投入了几个

:lisp (sb-ext:gc :full t)
Run Code Online (Sandbox Code Playgroud)

希望避免这个错误.我不太了解lisp,当然也不了解垃圾收集的所有内容.

虽然我在Maxima工作中使用了memoization,但我的计算有点密集和递归.我的电脑用 …

lisp linux sbcl common-lisp maxima

6
推荐指数
1
解决办法
315
查看次数

什么是真正的小数字?C++类

我知道我应该在类中包含一个"get_Diameter()"函数,以便访问私有数据成员,但我无法弄清楚真正的小数字来自何处.

(可以忽略Rectangle的东西 - 它是一个圆形问题)

这是驱动程序代码:

// classes example
#include <iostream>
using namespace std;

#include "rect2.h"
#include "roughCirc.h"

int main () {
  Rectangle rect (3,4);
  Rectangle rectb;
  cout << "rect area: " << rect.area() << endl;
  cout << "rectb area: " << rectb.area() << endl;
  cout << " " << endl;

  Circle circ (1.3);
  cout << "circle area: " << circ.area() << endl;

  Circle circB;
  cout << "circle area: " << circB.area() << endl;
  return 0;
}
/*
g++ -o main2 …
Run Code Online (Sandbox Code Playgroud)

c++ class

1
推荐指数
1
解决办法
77
查看次数

标签 统计

c++ ×1

class ×1

common-lisp ×1

linux ×1

lisp ×1

maxima ×1

sbcl ×1