![](/img/trans.png)
[英]ThreadFactory and newThread(Runnable r) how to access to the attributes of r if it is a Thread?
[英]How to access Runnable during Thread creation inside ThreadFactory?
我有一個使用自定義ThreadFactory
創建的ThreadPoolExecutor
。 當我通過Runnable
調用execute()
方法時,將使用自定義ThreadFactory
創建一個新Thread
。 問題是我找不到在Runnable
內部訪問信息的方法。
例如,我有一個實現Runnable
Job
類。 在Job
內部,我想在自定義ThreadFactory
的newThread()
方法中訪問屬性A
問題是我無法將作為參數傳遞的Runnable
為Job
因為它不是Job
實例,它是ThreadPoolExecutor.Worker
類的實例,並且該類是private
。
您要么濫用,要么誤解了線程池的作用。 創建線程和提交/運行任務的過程完全分離。 線程池決定何時創建新線程,它可能根本與提交的任何新任務都不相關。
最后要記住,一個線程很可能在多個Runnable
重用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.