0

如何使用WriteLock一个static方法?这就是我所拥有的:

m_unitLock = new ReentrantReadWriteLock();
m_unitReadLock = m_unitLock.readLock();
m_unitWriteLock = m_unitLock.writeLock()

static List<unit> units = new ArrayList<Unit>();
...
public static addUnit(){
  m_unitWriteLock.lock(); // can not use this inside a static method
  units.add(unit);
  m_unitWriteLock.unlock();
}

m_unitWriteLock定义为静态的正确方法吗?你对这种情况有什么建议?tnx。

4

1 回答 1

2

是的,为什么不?

如果您的方法是静态的,那么锁也必须是静态的。问题是:方法是否需要是静态的?但这取决于你要解决的问题。

于 2013-08-29T15:49:38.783 回答