静态方法/类的多线程

时间:2010-09-02 09:15:28

标签: multithreading static locking

当线程大量使用方法时,我们真的需要锁定静态方法(静态类)吗? 当静态方法使用SQL Queries / StoredProcedures等资源时是否需要它?

由于 Pankaj

2 个答案:

答案 0 :(得分:1)

这完全取决于静态方法的作用。如果他们正在使用共享资源(例如,相同的SQL连接或修改共享集合),那么是的,您绝对需要锁定或类似的东西。

但是,如果每个方法调用实际上是独立的,没有触及任何共享的可变状态,则不需要任何锁定。

答案 1 :(得分:0)

如果您有跨线程共享内存(静态或非静态)并依赖于此状态信息,则可能会出现竞争条件,从而导致难以调试问题和错误执行。