200分求解,静态方法是否会有线程安全性问题?

coldpanth 2005-07-21 01:29:52
这个问题不算是老问题了,但是一直还真是没太搞明白,在多用户同时并发访问某个类的静态方法时,是否有可能得到意想不到的数据?
如:
public class SoftDownDataOperate
{
public static DataTable datatableoperate(DataTable table)
{
对table的一些操作....
return table;
}
}
这样,当N万人同时访问这个类的这个方法时,指的是同时并发极端的情况,会不会有线程安全问题?造成某些线程返回不应该得到的数据?
...全文
445 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovebanyi 2005-07-29
  • 打赏
  • 举报
回复
又有些明白了。
coldpanth 2005-07-26
  • 打赏
  • 举报
回复
555没人了啊?
coldpanth 2005-07-26
  • 打赏
  • 举报
回复
.
  • 打赏
  • 举报
回复
顶,是不是在等五颗星的。
Ivony 2005-07-26
  • 打赏
  • 举报
回复
555没人了啊?

========================================================


已经很详细了哈,楼主还有什么不懂的
xvhaijun 2005-07-26
  • 打赏
  • 举报
回复
帮你顶下吧
mamoon 2005-07-26
  • 打赏
  • 举报
回复
关注
ljhkim6 2005-07-26
  • 打赏
  • 举报
回复
mark
lordych 2005-07-21
  • 打赏
  • 举报
回复
那要看你是怎么实现这个静态方法的,如果你这个静态方法访问了一个公共的对像(通常由一个静态字段引用),而你这个静态方法又可能同时用在不同的线程里,这时你就要在此静态方法内部自己实现
安全处理。
zeusvenus 2005-07-21
  • 打赏
  • 举报
回复
一般不会。
JzeroBiao 2005-07-21
  • 打赏
  • 举报
回复
不会~
haoztao 2005-07-21
  • 打赏
  • 举报
回复
应该不会的吧。。。
bitmaque 2005-07-21
  • 打赏
  • 举报
回复
不知道!!!!
codeangel 2005-07-21
  • 打赏
  • 举报
回复
同意fancyf
刘明金 2005-07-21
  • 打赏
  • 举报
回复
不会的
静态方法会在每一个线程中运行,它们如果操作同一个静态成员就会出问题,而方法的内部变量不受影响。
fanruinet 2005-07-21
  • 打赏
  • 举报
回复
线程安全与否与服务器快慢没有直接关系,处理速度只是影响出错的几率而已

这个函数操作的是一个引用类型,因此有可能会出现线程同步的问题
建议在处理的时候将DataTable用lock锁住,或者在传递参数进来之前用clone复制一个新对象然后传进来
coldpanth 2005-07-21
  • 打赏
  • 举报
回复
.
bingbingcha 2005-07-21
  • 打赏
  • 举报
回复
避免在同一线程中使用静态变量..
静态方法一般用于下列场合:

1.初始化类中的值和变量

2.类中的共有成员

3.处理数据的方法.例如:过滤SQL语句,截取特定长度的字符串等等..

使用静态方法的时候尽量避免操作数据实体.尤其是当前页面中频繁访问的数据实体..例如,用户id,页面调用数据id等等
coldpanth 2005-07-21
  • 打赏
  • 举报
回复
继续顶
Ivony 2005-07-21
  • 打赏
  • 举报
回复
静态成员会有问题,静态方法不会。

但是如果你的静态方法里面使用了类的静态成员,就会出问题。

因为静态方法会在每一个线程中运行,它们如果操作同一个静态成员就会出问题,而方法的内部变量不受影响。
加载更多回复(7)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧