-1
我正在使用powershell。有一个用C#封装器编写的托管C++类。当我在Power Shell中创建这个类的实例并稍后调用它时,Powershell崩溃。看来powershell正在删除这些对象。我能做些什么来阻止PowerShell删除这些对象。Powershell垃圾收集器删除不应删除的.Net对象
'代码'
[int] $i
{
$i = New-Object int;
$i = 20;
}
Write-Host $i
for([long] $j = 0; $j -le 1000; $j++)
{
$newVar = New-Variable "aNewObject$j"
$newVar = $j;
}
if($i -eq $null)
{
Write-Host "I is destroyed"
}
输出。这里是:我被破坏
任何想法。
你应该更详细地解释你的问题。你到目前为止所描述的对我来说工作得很好。 –
我在PowerShell中创建了托管C++类实例。 然后我在代码中稍后调用它。 所以有时当我运行整个脚本时,它没有任何问题,有时PowerShell崩溃。 所以我调查了它与视觉工作室,我发现了PowerShell崩溃,因为损坏的内存。 每个线索都有不同的PowerShell实例。 托管的C++代码是Unmanaged C++代码的封装。 –
我使用powershell 3.0 –