关于vb.net调用dll时的内存问题
各位大神,小弟使用MATLAB的com组件方式将.m的函数打包生成了dll,然后在vb.net中调用。程序如下,在界面载入时我进行了初始化(由于初始化速度慢,所以在载入窗口时选择了初始化,而没有在后续调用之前初始化),然后当点击“按钮1”和“按钮2”是分别可以使用不同的参数调用已经初始化的函数计算。但是我在调试的过程中发现,当使用按钮1和按钮2进行了多次计算后,会弹出提示“尝试读写受保护的内存”,这个时候就没法继续使用了,只能关闭软件并重新再打开。请教一下各位大神这是由于多次使用calculation_function1函数导致的么?我应该怎么处理能避免出现这个问题?在此先行谢过。
Public Class Form1
Public calculation_function1 As add_com.jisuan‘引用dll
Dim c As Double
'界面载入
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
calculation_function1 = New add_com.jisuan '载入时初始化
End Sub
'按钮1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
calculation_function1.add(1, c, 参数1, 参数2)
End Sub
'按钮2
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
calculation_function1.add(1, c, 参数3, 参数4)
End Sub
End Class