I have written a task listener model as the code below, is that any optimization or bug fixing(if it has) can be done on it, especially the List and the Map accessing? In this model, creates a Map to hold several List which contains some listeners of users, mostly the size of every List is around 1000. Two points here: 1. for performance, use HashMap or ConcurrentHashMap? 2. is that a better approach than copying a List and iterate the copied List on multi threads accessing?I have written a task listener model as the cod