重构synchronized