永发信息网

值类型和引用类型的区别是什么?为什么要设计值类型?值类型会被GC回收吗?值类型是否能在托管堆分配

答案:2  悬赏:60  手机版
解决时间 2021-03-11 17:18
值类型和引用类型的区别是什么?为什么要设计值类型?值类型会被GC回收吗?值类型是否能在托管堆分配
最佳答案
1、 值类型直接存储其值;引用类型存储的是对其值的引用;值类型默认分配在栈上,但可以通过装箱操作将值类型数据复制到堆上;引用类型仅能被CLR分配到堆中,但引用的地址保存在栈上。
2、所有说,装箱是要耗费系统资源的,如不是必须不要频繁进行装箱拆箱操作。
3、下面回答你值类型会不会被GC回收。回答是否定的。解说如下:
一般情况下, new 一个引用类型时, 是在堆上分配内存,而值类型是在栈上, 当某方法返回时, 栈会恢复到该方法调用前的状态, 该方法在栈上分配的值类型的内存自然就释放了, 不必等GC。 而引用类型是在堆上分配, 栈上保存着一个地址而已, 当栈释放后, 即使对象已经没有用了, 但堆上分配的内存还在,只能等GC收集时才能真正释放。
全部回答
搜一下:值类型和引用类型的区别是什么?为什么要设计值类型?值类型会被GC回收吗?值类型是否能在托管堆分配
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
要配制一种浓度为10%的糖水,12克糖需要加水(
集成显卡的主板在哪接显示器
华山现在有修道高人吗?
玩手游银时之魂用的是快速开始的账号,结果切
滨河路这个地址在什么地方,我要处理点事
200分求一个大年三十菜谱!!!!千万不要复
有人说,活人永远争不过死人,得到的,永远争
苏州甪直古镇在哪个站台下
上泗塘地址在什么地方,想过去办事
【甘肃联合大学学报】甘肃联合大学学报如何翻
我想多买几只宠物狗搞繁殖,但是到市场上去买
家具保险有什么作用?与一般的家财险买哪个好?
数学提公因式的题5a(x-y)-10b(y-x)的公因式是
【渔夫的故事选自】《渔夫的故事》选自古代阿
荣事达XQB50-991GE 洗衣机的说明书谁有?急需
推荐资讯
泰安古戏台怎么去啊,有知道地址的么
猫砂哪种好用
安阳到洛阳距离多远?
四川荣昌商会这个地址在什么地方,我要处理点
完美多用途洗洁精一箱几桶?一箱多少钱?
和心意有关的成语
如果数值最后两位大于50,则最后两位变成99,否
白天会经常打喷嚏,鼻腔内痒痒,晚上睡觉时会
上海最大的古玩市场那几个?
南湖公园地址在哪,我要去那里办事,
N78和N79哪个更好一点?
西陇社区居民委员会怎么去啊,有知道地址的么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?