|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
c++是语言,其实C++和java的应用范围根本就不一样的。在java应用的领域内,c++是不合适的。所以微软才搞了C#和Java对抗。GC的全称是garbagecollection,中文称号渣滓接纳,是.NET中对内存办理的一种功效。渣滓接纳器跟踪并接纳托管内存平分配的工具,按期实行渣滓接纳以接纳分派给没有无效援用的工具的内存。当利用可用内存不克不及满意内存哀求时,GC会主动举行。
GC的全称是garbagecollection,中文称号渣滓接纳,是.NET中对内存办理的一种功效。渣滓接纳器跟踪并接纳托管内存平分配的工具,按期实行渣滓接纳以接纳分派给没有无效援用的工具的内存。当利用可用内存不克不及满意内存哀求时,GC会主动举行。
在举行渣滓接纳时,渣滓接纳器会起首搜刮内存中的托管工具,然后从托管代码中搜刮被援用的工具并标志为无效,接着开释没有被标志为无效的工具并发出内存,最初收拾内存将无效工具移动到一同。这就是GC的四个步骤。
由上可见,GC是很影响功能的,以是一样平常说来这类事变况仍是只管少产生为好。
为了削减一些功能影响,.NET的GC撑持工具老化,大概说分代的观点,代是工具在内存中绝对存现时代的器度单元,工具的代数或存现时代申明工具所属的代。今朝.NET的渣滓接纳器撑持三代。每举行一次GC,没有被接纳的工具就主动提拔一代。较近创立的工具属于较新的代,比在使用程序性命周期中较早创立的工具的代数低。比来代中的工具位于零代中。每次GC的时分,都起首接纳零代中的工具,只要在较低代数的工具接纳完成后仍不克不及满意需求的情形下才接纳较高代数的工具。
我觉得很重要,一般所说的不重要应该指的是:你学好一种以后再学另一种就很容易了。(因为这样大家可能有一个错觉就是语言不是很重要,只要随便学一种就可以了,其实不是这样的。 |
|