這篇文章給大家介紹Java中怎么設置線程池名稱,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
Spring 框架提供的 CustomizableThreadFactory
。
ThreadFactory springThreadFactory = new CustomizableThreadFactory("springThread-pool-");
ExecutorService exec = new ThreadPoolExecutor(1, 1,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(10),springThreadFactory);
exec.submit(() -> {
logger.info("--記憶中的顏色是什么顏色---");
});
Google guava 工具類 提供的 ThreadFactoryBuilder
,使用鏈式方法創建。
ThreadFactory guavaThreadFactory = new ThreadFactoryBuilder().setNameFormat("retryClient-pool-").build();
ExecutorService exec = new ThreadPoolExecutor(1, 1,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(10),springThreadFactory);
exec.submit(() -> {
logger.info("--記憶中的顏色是什么顏色---");
});
Apache commons-lang3 提供的 BasicThreadFactory
.
ThreadFactory basicThreadFactory = new BasicThreadFactory.Builder()
.namingPattern("basicThreadFactory-").build();
ExecutorService exec = new ThreadPoolExecutor(1, 1,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(10),springThreadFactory);
exec.submit(() -> {
logger.info("--記憶中的顏色是什么顏色---");
});
最終本質都是 給 java.lang.Thread#name 設置名稱,詳情源碼感興趣的可以自行查看。
final Thread thread = new Thread();
thread.setName(name);
關于Java中怎么設置線程池名稱就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。