假设我有一个公共method1
调用私有method2
,我使用锁来确保method1
的线程安全,我是否需要在{{1}上使用锁定}? method2
只能通过method2
调用。
答案 0 :(得分:2)
如果仅method2
调用method1
,则您不必在method2
中使用锁定。 method1
中的一个锁即可。
当一个线程类method1
,它将获得锁定,调用method2
,method2
将不会被另一个线程同时执行,因为另一个线程线程应首先调用method1
,在这种情况下,method1
将无法获取锁定。