在单声道下执行 .NET.Program 时,我不断得到一个 SIGSEGV,当在 Windows 机器上运行时,它运行得非常好。
错误如下所示:
Stacktrace:
at <unknown> <0xffffffff>
at (wrapper managed-to-native) object.wrapper_native_0x2b32fe108a20 (intptr,intptr,bool&) <0xffffffff>
at RDotNet.Expression.TryEvaluate (RDotNet.REnvironment,RDotNet.SymbolicExpression&) <0x00067>
at RDotNet.REngine.Parse (string,System.Text.StringBuilder) <0x0026f>
at RDotNet.REngine/<Defer>d__0.MoveNext () <0x00263>
at System.Linq.Enumerable.LastOrDefault<TSource_REF> (System.Collections.Generic.IEnumerable`1<TSource_REF>) <0x000d6>
at RDotNet.REngine.Evaluate (string) <0x00037>
at Strompreisprognose.Tools.SpotPriceForecast.SpotPriceForecastCalculator.Regressio
[...]
at SpotPriceForecast.Program.Main (string[]) <0x00173>
at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff>
Native stacktrace:
mono() [0x49cf0c]
mono() [0x4f2d5e]
mono() [0x4249dd]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xf8d0) [0x2b32f49d48d0]
[0x2b32f7e01284]
Debug info from gdb:
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================
我想到的只是调用Dispose()
在循环中使用的 used REngine
s,因为它似乎以某种方式溢出,但这是不可能的,因为REngine
一旦按设计处理 -Singleton 就无法重新初始化。
增加 Maschines Memory 或 ulimit dit 也无济于事。有什么我想念的吗?