I\'ve been at this for a week now doing my research on how to properly synchronize an ArrayList.
My main issue in a nutshell is I have a \"master\" ArrayList of objects.
Another approach is to protect all access to the list, but with a ReadWriteLock instead of synchronized blocks.
This allows simultaneous reads in a safe manner, and could improve performance a lot in a scenario with many reads and few writes.