检测到分段违例从.NET 2.0应用程序调用Matlab

时间:2013-08-22 20:02:58

标签: .net visual-studio-2010 matlab c#-2.0

当我尝试使用Matlab进行一些协方差计算时,我收到此错误。我在win 2008服务器64位应用程序上从.NET 2.0应用程序调用matlab。我从matlab获得的异常消息是“评估函数错误,SEGV:严重错误”

I am copying the dump file from the matlab crash. Any help is really appreciated, thanks in advance.

This is the Exception information I see in the Dump file:

**"The Thread tried to read from or write to an virtual address for which it does not have the appropriate access"**

------------------------------------------------------------------------
       Segmentation violation detected at Thu Aug 22 15:05:20 2013
------------------------------------------------------------------------

Configuration:

  MATLAB Version:   7.9.0.529 (R2009b)
  MATLAB License:   unknown
  Operating System: Microsoft Windows Server Longhorn
  Window System:    Version 6.0 (Build 6002: Service Pack 2)
  Processor ID:     x86 Family 6 Model 14 Stepping 6, GenuineIntel
  Virtual Machine:  Java 1.6.0_45-b06 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed mode
  Default Encoding:  windows-1252

Fault Count: 1

Register State:

  rax = 00000000c0000005      rbx = 0000000024c25e40
  rcx = 000000001f517950      rdx = 000000001f517108
  rbp = 0000000000000050      rsi = 0000000000000020
  rdi = 0000000000000000      rsp = 000000001f518750
   r8 = 000000001ed23000      r9 = ffffffffc0000005
  r10 = 000000001f518690      r11 = 000000001f517788
  r12 = 0000000076df54e3      r13 = 00000000fffffd66
  r14 = 0000000079f5d05d      r15 = 0000000079f5d05d
  rip = 000000001f518830      flg = 0000000000010202

Stack Trace:

  [  0] 0000000076CBAF46     KERNEL32.dll+110406 (FlsSetValue+000422)

  [  1] 0000000076CB1CF7     KERNEL32.dll+072951 (GetEnvironmentVariableA+000311)

  [  2] 000000007005DDB6     mkl.dll+384438 (xerbla+310678)

  [  3] 0000000079F5D05D     libmwmathlinalg.dll+249949 (mfMatrixMult+006973)

  [  4] 0000000024C25E40     libiomp5md.dll+024128 (kmp_set_defaults+015320)

  [  5] 000000007004EDAC     mkl.dll+322988 (xerbla+249228)

  [  6] 0000000074F1EC7F     MSVCR80.dll+191615 (mbsnbicoll_l+000351)

  [  7] 0000000074EF6DFB     MSVCR80.dll+028155 (free+000027)

  [  8] 0000000074F1CDEC     MSVCR80.dll+183788 (_crtGetStringTypeW+001724)

  [  9] 0000000074F524B3     MSVCR80.dll+402611 (makepath_s+000947)

  [ 10] 0000000024C2EB3B     libiomp5md.dll+060219 (ompc_set_num_threads+000031)

  [ 11] 000000007C8816A0     libmwblas.dll+071328 (ztrsv+027816)

  [ 12] 000000007C8817C0     libmwblas.dll+071616 (ztrsv+028104)

  [ 13] 000000007C857B45     libmwbinder.dll+031557 (Binder::_load_and_resolve+001445)

  [ 14] 000000007C8816A0     libmwblas.dll+071328 (ztrsv+027816)

  [ 15] 0000000076E19915     ntdll.dll+301333 (AlpcGetMessageAttribute+002309)

  [ 16] 0000000079FFA250     libmwmathlinalg.dll+893520 (SparseLUFactor::`vftable'+004576)

  [ 17] 0000000079FFA24C     libmwmathlinalg.dll+893516 (SparseLUFactor::`vftable'+004572)

 [ 18] 000000007CEC9272     libmx.dll+037490 (mxCharMatrixToStrings_UTF8+000194)

1 个答案:

答案 0 :(得分:1)

我担心我不知道是什么导致了您的错误或如何解决它。

但是MATLAB应该从不这样的SEGV。即使你做了一些不好或不支持的事情,它也应该优雅地错误并告诉你出了什么问题。

如果您可以重复获得此SEGV错误,请将其作为错误报告给MathWorks。他们可能会或可能不会发现您是否做错了什么,可能会也可能不会建议解决方案或解决方案 - 但他们需要了解SEGV。

向MathWorks报告问题时,如果可能,报告一个可重复性最小的案例,并确保描述系统的所有方面(OS,MATLAB,.NET等)。