"synchronized" is unneeded for single-thread applications