只需要两步。就可以让你得线程变量在线程池下正常传递。
第一步将ThradlLocal类型替换为TransmittableThreadLocal
private static TransmittableThreadLocal<RiskOpuOmUser> principalThreadLocal = new TransmittableThreadLocal();
private static TransmittableThreadLocal<String> tokenThreadLocal = new TransmittableThreadLocal();
第二部使用TtlRunnable.get(runable)对run方法进行包装
CompletableFuture.runAsync(TtlRunnable.get(() -> {
/... do your business
}));