我想知道以下workingCopy哪个是函数的局部变量THREAD SAFE
private static final Lock lock = new ReentrantLock();
private final List<String> Ids= new LinkedList<String>();
private void foo(){
List<String> workingCopy = null;
final boolean locked = lock.tryLock();
try
{
workingCopy = new LinkedList<String>(Ids);
Ids.clear();
}
catch (final Exception e)
{
log.debug(e.toString());
}
finally
{
if (locked)
{
lock.unlock();
}
}
for (final String copy: workingCopy)
{ /// }
}
Run Code Online (Sandbox Code Playgroud)
或者有更好的方法来做到以下几点