在.NET中清空内存

在.NET中清空内存,.net,memory-management,.net,Memory Management,不只是释放GC的内容,一个人怎么能把内存归零呢 例如,如果您有一个自定义DTO或一个包含敏感数据的数据集,如何清除内容,而不只是将变量设置为null或调用Dispose()?(除了手动将每个数据项设置为0或“”) 除了手动将每个数据项设置为0或“” 除此之外,没有办法做到这一点 这可能比您想象的更糟糕,因为GC可能会随意在内存中移动对象,将未清除的版本保留在可用内存中。例如,如果您有自定义DTO或带有敏感数据的数据集,如何清除内容。。。我们可以在数据集上调用clear函数,如dataset.Ta

不只是释放GC的内容,一个人怎么能把内存归零呢

例如,如果您有一个自定义DTO或一个包含敏感数据的数据集,如何清除内容,而不只是将变量设置为null或调用Dispose()?(除了手动将每个数据项设置为0或“”)

除了手动将每个数据项设置为0或“”

除此之外,没有办法做到这一点


这可能比您想象的更糟糕,因为GC可能会随意在内存中移动对象,将未清除的版本保留在可用内存中。

例如,如果您有自定义DTO或带有敏感数据的数据集,如何清除内容。。。我们可以在数据集上调用
clear
函数,如
dataset.Tables.clear()
dataset.clear()
调用存储过程后,当数据表或数据行中充满敏感数据时,如何使用SecureString?在数据结构中加密数据,就像上面的注释中提到的SecureString一样,这很好。