静态方法的注意

时间:2021-05-16 19:33:43
   程序里面有很多静态方法.每次调用完.是否要进行GC呢.
   调用静态方法,需要注意些什么呢?
   

9 个解决方案

#1


帮顶。。。。。。。。。

#2




只要保证你代码及时关闭一些资源(如关闭数据库连接等)就可以。

没必要每次都调用一次, GC.Collect();而且不是你调用了就能立即回收垃圾,这些工作还是去交给.net自己去完成吧。

#3


不是说所有和静态相关的东西都有问题。。。

静态方法是类级别的方法,不需要进行GC。。。

#4


.net它会自动就行垃圾回收,所以你不需要考虑那些,像2楼说的,数据库连接的时候需要关闭,还有比如使用流的时候,使用后也关闭下其他就的没那么多了

#5


从性能上说,静态方法效率要稍微高一些,但是它会常驻内存... 
一些情况下使用静态方法是有好处的,因为对于静态方法无论你有多少个实例, 
内存中要维护的一份拷贝
一般使用频繁的方法用静态方法,用的少的方法用动态的。静态的速度快,占内存。动态的速度相对慢些,但调用完后,立即释放类

#6


如果你总是调用GC,你的程序会变慢。

很简单,打个比方,如果你酒足饭饱之后10个小时去拉一泡屎这是正常的,如果你强迫自己每当刚吃两口菜就到厕所蹲5分钟,那么这一顿饭岂不是要吃上10个小时?

#7


你这担心完全是多余的。。。。

去了解下什么静态方法吧

#8


引用 6 楼 sp1234 的回复:
如果你总是调用GC,你的程序会变慢。

很简单,打个比方,如果你酒足饭饱之后10个小时去拉一泡屎这是正常的,如果你强迫自己每当刚吃两口菜就到厕所蹲5分钟,那么这一顿饭岂不是要吃上10个小时?
哈哈,比喻得真好

#9


引用 5 楼 wuyq11 的回复:
从性能上说,静态方法效率要稍微高一些,但是它会常驻内存...
 一些情况下使用静态方法是有好处的,因为对于静态方法无论你有多少个实例,
 内存中要维护的一份拷贝
 一般使用频繁的方法用静态方法,用的少的方法用动态的。静态的速度快,占内存。动态的速度相对慢些,但调用完后,立即释放类


静态方法在执行效率上是比实例方法要快一些,但貌似是单线程的,如果是处理较慢的方法可能会出现堵塞现象....个人观念..

#1


帮顶。。。。。。。。。

#2




只要保证你代码及时关闭一些资源(如关闭数据库连接等)就可以。

没必要每次都调用一次, GC.Collect();而且不是你调用了就能立即回收垃圾,这些工作还是去交给.net自己去完成吧。

#3


不是说所有和静态相关的东西都有问题。。。

静态方法是类级别的方法,不需要进行GC。。。

#4


.net它会自动就行垃圾回收,所以你不需要考虑那些,像2楼说的,数据库连接的时候需要关闭,还有比如使用流的时候,使用后也关闭下其他就的没那么多了

#5


从性能上说,静态方法效率要稍微高一些,但是它会常驻内存... 
一些情况下使用静态方法是有好处的,因为对于静态方法无论你有多少个实例, 
内存中要维护的一份拷贝
一般使用频繁的方法用静态方法,用的少的方法用动态的。静态的速度快,占内存。动态的速度相对慢些,但调用完后,立即释放类

#6


如果你总是调用GC,你的程序会变慢。

很简单,打个比方,如果你酒足饭饱之后10个小时去拉一泡屎这是正常的,如果你强迫自己每当刚吃两口菜就到厕所蹲5分钟,那么这一顿饭岂不是要吃上10个小时?

#7


你这担心完全是多余的。。。。

去了解下什么静态方法吧

#8


引用 6 楼 sp1234 的回复:
如果你总是调用GC,你的程序会变慢。

很简单,打个比方,如果你酒足饭饱之后10个小时去拉一泡屎这是正常的,如果你强迫自己每当刚吃两口菜就到厕所蹲5分钟,那么这一顿饭岂不是要吃上10个小时?
哈哈,比喻得真好

#9


引用 5 楼 wuyq11 的回复:
从性能上说,静态方法效率要稍微高一些,但是它会常驻内存...
 一些情况下使用静态方法是有好处的,因为对于静态方法无论你有多少个实例,
 内存中要维护的一份拷贝
 一般使用频繁的方法用静态方法,用的少的方法用动态的。静态的速度快,占内存。动态的速度相对慢些,但调用完后,立即释放类


静态方法在执行效率上是比实例方法要快一些,但貌似是单线程的,如果是处理较慢的方法可能会出现堵塞现象....个人观念..