日期:2014-05-18  浏览次数:20986 次

static 有疑问
在winfrom中,static这个经常用,winfrom做的基本都是个人版软件,用static调用时候方便,而且省去了不注意时候的大量实例化带来的资源浪费。但在web开发中,基本很少用static,如果属性用static的话,一个人有改动,其他都要改动。但如果方法使用static的话,会有什么问题呢?
1.如果保证了同一时间只有一个人调用则个方法,方法使用static会有问题吗?
2.如果不做限定,同一时间多个人调用这个方法,会出现什么问题?

请明白人做下解答,谢谢

------解决方案--------------------
如果这个方法仅仅使用局部变量是没有问题的。
------解决方案--------------------
static方法基本上在单线程的winform下是安全的,没什么太多缺点,

而web多是多线程的环境,或者多线程的winform,用static方法会有冲突的风险,一般来说,如果static方法中没有访问static变量,则多线程同时调用也不会有问题,如果访问了static变量,则可能会发生冲突,解决方法是lock这个static变量然后再使用,