【发布时间】:2014-02-16 08:28:13
【问题描述】:
对 C# 静态/常量成员/局部变量有疑问。只想知道在C#中分配给未使用的静态/常量成员/局部变量的内存会发生什么,下面的示例场景中的内存是如何回收的?
问题是关于静态和常量变量的内存行为[考虑每个应用程序域的内存-静态存储]?这个问题与垃圾收集无关。这是关于内存以及(也)有内存的未使用的静态和常量变量会发生什么?
意大利面条代码片段:
/// <summary>
/// Skew your data with every-second-and-annoyed updates
/// </summary>
class Skewgle
{
static Skewgle cloneApele = new Skewgle();
const Skewgle patentMoto = default(dynamic);
static int? dontBeEvilMotto = 1998;
const int ditchMotoToBeEvil = 2014;
static void Main()
{
const Skewgle findYourMailsAlreadyReadBetweenSpamTabs = patentMoto;
if (findYourMailsAlreadyReadBetweenSpamTabs == null)
{
System.Console.WriteLine("findYourMailsAlreadyReadBetweenSpamTabs and patentMoto are null");
}
if (cloneApele != null)
{
System.Console.WriteLine("cloneApele is not null");
}
System.Console.WriteLine("What about dontBeEvilMotto? ditchMotoToBeEvil?");
}
}
谢谢
【问题讨论】:
-
按建议改写。顺便说一句,Alexei Levenkov 和 Quetzalcoatl 已经很好地回答了这个问题。大佬们点赞!!!
标签: c#