也已登录:https://github.com/dotnet/coreclr/issues/27734
附加的代码:https://github.com/dotnet/coreclr/files/3820061/Program.zip
我们针对以netcoreapp2.2为目标的附加(严重缩减)项目存在问题。
我们以发布和调试配置来构建和发布该应用。
在Windows上运行时,发布和调试均成功完成。
在Linux上运行时,调试成功完成,但是Release终止并出现以下错误之一:
- System.accessViolationException:'试图读取或写入受保护的内存。这通常表明其他内存已损坏。'
- 分段错误
程序非常简单,不包含任何非托管代码,没有第三方依赖性,并且几乎没有逻辑。
Linux机器详细信息(但是这会在我们可用的所有不同Linux机器/操作系统上发生):
Unu(xx)
dotnet --info:
if inp==0:
print('***')
print('0 Is not acceptable ')
print('***')
else:
nu_list = []
Unu_list = []
for xx in range(1,819):
...# lines of code
if inp<0:
if lim > 1:
pass
else:
nu_list.append(dfimppara.iloc[xx,1] *115)
Unu_list.append(Unu(xx))
plt.plot(Unu_list,nu_list)
else:
...
plt.show()
我们已经尽可能地削减了程序的数量(显然,在我们的实际程序中,方法参数是必需的)。
有人看到过这个问题,或者可以提出不涉及删除参数或删除接口的前进方法吗?