我正在写一个我有一个列表的课程。我正在从 的 run 方法实例化列表Runnable
。作为:
public void sendEmailToLegalUsers() {
Log.info("JYM====================================");
try {
new Runnable() {
public void run() {
userCns = new ArrayList<String>();
recipients = new ArrayList<String>();
///other codes
}
};
} catch (Exception e) {
Log.info("Error occurred in LDAPSendMail: "+ e.getMessage());
}
Log.info("END====================================");
}
现在每次调用 sendEmailToLegalUsers 方法都会有一个新线程。现在我想知道列表的内存范围是否绑定到类级别(如果它绑定到类级别并且如果说此方法被调用两次,那么当线程 1 创建的列表也有线程 2) 或线程在它们自己的范围内运行,那么每个线程的列表将具有不同的范围。有没有机会在两个或多个线程之间混淆列表数据?