
io.github.hpsocket.soa.starter.skywalking.async.TracingAsyncThreadPoolExecutor Maven / Gradle / Ivy
package io.github.hpsocket.soa.starter.skywalking.async;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.RejectedExecutionHandler;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.TimeUnit;
import io.github.hpsocket.soa.framework.core.thread.AsyncThreadPoolExecutor;
/** 异步线程池(注入 {@linkplain org.slf4j.MDC MDC} 和 traceId 调用链跟踪信息) */
public class TracingAsyncThreadPoolExecutor extends AsyncThreadPoolExecutor
{
public TracingAsyncThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue)
{
super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue);
}
public TracingAsyncThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue, ThreadFactory threadFactory)
{
super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue, threadFactory);
}
public TracingAsyncThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue, RejectedExecutionHandler handler)
{
super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue, handler);
}
public TracingAsyncThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue, ThreadFactory threadFactory, RejectedExecutionHandler handler)
{
super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue, threadFactory, handler);
}
@Override
protected Runnable decorate(Runnable task)
{
return TracingRunnableWrapper.of(task);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy