020 ThreadFactoryBuilder


一.概述  

  在並發包之中出現了ThreadFactory接口,如下:  

public interface ThreadFactory {
    Thread newThread(Runnable r);
}

從上面基本的定義中可以看出,就是將一個線程的執行單元包裝成為一個線程對象,我們一般會指定這個線程的一些屬性,

比如線程的名稱,線程的優先級,線程是否是守護線程等線程.

  常見的,我們創建一個線程工廠都是實現這個接口,創建一個類,通過這個方式創建出一個線程的工廠.

在guava之中,為了我們方便的創建出一個ThreadFactory對象,我們可以使用ThreadFactoryBuilder對象自行創建一個線程.

具體的定義如下:  

public final class ThreadFactoryBuilder 

這個類是一個標准的builder模式的實現,

我們就能夠通過這個類來創建出自定義的ThreadFactory對象來.


二 .基本的演示 

public class ThreadFactoryBuilderTest {
    
    public static void main(String[] args) {
        ThreadFactory threadFactory = new ThreadFactoryBuilder().setNameFormat("線程名稱-%s").build();
        
        // 創建一個線程對象
        Thread newThread = threadFactory.newThread(()->{
            
        });
        
        System.out.println(newThread.getName());
        
    }
}

很方便的,我們就創建出了一個ThreadFactory對象來.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM