refactor: 为线程池设置 ThreadFactory.

设置 ThreadFactory 以更好的辨别线程.
This commit is contained in:
LamGC 2021-08-15 23:13:09 +08:00
parent 12d32737f2
commit 765b13f149
Signed by: LamGC
GPG Key ID: 6C5AE2A913941E1D

View File

@ -1,6 +1,7 @@
package net.lamgc.oracle.sentry.script.groovy.trigger; package net.lamgc.oracle.sentry.script.groovy.trigger;
import com.google.common.base.Throwables; import com.google.common.base.Throwables;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
@ -19,6 +20,9 @@ public class TimerTrigger implements GroovyTrigger {
private final static ThreadPoolTaskScheduler SCHEDULER = new ThreadPoolTaskScheduler(); private final static ThreadPoolTaskScheduler SCHEDULER = new ThreadPoolTaskScheduler();
static { static {
SCHEDULER.setPoolSize(Runtime.getRuntime().availableProcessors()); SCHEDULER.setPoolSize(Runtime.getRuntime().availableProcessors());
SCHEDULER.setThreadFactory(new ThreadFactoryBuilder()
.setNameFormat("Groovy-TimerTrigger-%d")
.build());
SCHEDULER.setErrorHandler(t -> log.error("脚本执行时发生异常.", t)); SCHEDULER.setErrorHandler(t -> log.error("脚本执行时发生异常.", t));
} }