您的位置:首页 > 编程语言 > Java开发

Java Concurrency - ThreadFactory, 使用工厂方法创建线程

2016-09-28 16:45 483 查看
当需要创建多个类似的线程实例时,使用工厂模式替代 new 操作符创建线程,能使代码更为简洁,易于维护。JDK 提供了 java.util.concurrent.ThreadFactory 接口,ThreadFactory 只有一个方法 newThread,它接收一个 Runnable 参数,返回一个 Thread 实例。

public class DaemonThreadFactory implements ThreadFactory {

@Override
public Thread newThread(Runnable task) {
Thread thread = new Thread(task);
thread.setDaemon(true);
return thread;
}

}

public class Task implements Runnable {

@Override
public void run() {
try {
Thread.sleep(1000L);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

}

public class Main {

public static void main(String[] args) {

DaemonThreadFactory daemonThreadFactory = new DaemonThreadFactory();
for (int i = 0; i < 3; i++) {
Thread thread = daemonThreadFactory.newThread(new Task());
thread.start();
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: