你熟悉多线程,请举例说明你在项目中如何正确使用线程池,以及遇到过哪些线程安全问题? 在项目中需要批量处理用户积分变动如每日积分汇总。我创建了自定义线程池使用CallerRunsPolicy拒绝策略避免任务丢失。线程安全问题多个线程同时更新同一个用户的积分余额时会出现数据不一致。解决方案使用AtomicInteger或ConcurrentHashMap的原子操作或者对关键代码块加ReentrantLock。更彻底的是将更新操作放到Redis中通过Lua脚本保证原子性。