开篇词 (1讲)
代码篇 (2讲)
01 | 使用了并发工具类库,线程安全就高枕无忧了吗?
@Override
@GetMapping(value = "/{id}/")
public ResponseEntity getOne(@PathVariable Object id) {
try{
log.warn(Thread.currentThread().getName() + ":" + currentUser.get());
currentUser.set(id);
log.warn(Thread.currentThread().getName() + ":" + currentUser.get());
return responseEntity.success(service.getById((Serializable) id));
}finally {
currentUser.remove();
}
}
02 | 代码加锁:不要让“锁”事成为烦心事