package com.jyd.test.thread;
import cn.hutool.core.thread.ThreadFactoryBuilder;
import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.junit.Test;
import java.util.concurrent.*;
public class TestThreadFactory {
@Test
public void test01() throws InterruptedException {
CountDownLatch countDownLatch = new CountDownLatch(100);
ScheduledThreadPoolExecutor scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(1,
new BasicThreadFactory.Builder().namingPattern("example-schedule-pool-%d").daemon(true).build());
scheduledThreadPoolExecutor.execute(()->{
for (int i = 0; i < 100; i++) {
System.out.println(i);
countDownLatch.countDown();
}
});
countDownLatch.await();
}
@Test
public void test02() throws InterruptedException {
CountDownLatch countDownLatch = new CountDownLatch(100