1、wait和sleep的区别是wait会释放锁
2、@RestController和@Controller的区别是
@RestController返回一个对象,后端自由。
@Controller返回字符串,需要结合InternalResourceViewResolver返回指定页面。
3、volatile保证可见性
每次线程对变量进行修改,都保证立即刷新到主存
同样synchronized和Lock能保证同一时刻只有一个线程获取锁然后执行同步代码,并且在释放锁之前会将对变量的修改刷新到主存当中