鴻蒙OS InheritableThreadLocal

2022-05-11 17:55 更新

InheritableThreadLocal

java.lang.Object

|---java.lang.ThreadLocal<T&

|---|---java.lang.InheritableThreadLocal<T&

public class InheritableThreadLocal<T>
extends ThreadLocal<T>

此類擴(kuò)展 ThreadLocal 以提供從父線程到子線程的值繼承:當(dāng)創(chuàng)建子線程時(shí),子線程接收父線程具有值的所有可繼承線程局部變量的初始值。 通常,孩子的價(jià)值觀與父母的價(jià)值觀相同; 但是,通過覆蓋此類中的 childValue 方法,可以使子項(xiàng)的值成為父項(xiàng)的任意函數(shù)。

當(dāng)在變量中維護(hù)的每個(gè)線程屬性(例如,用戶 ID、事務(wù) ID)必須自動(dòng)傳輸?shù)絼?chuàng)建的任何子線程時(shí),可繼承的線程局部變量優(yōu)先于普通線程局部變量使用。

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
InheritableThreadLocal()

方法總結(jié)

修飾符和類型 方法 描述
protected T childValue(T parentValue) 計(jì)算此可繼承線程局部變量的子項(xiàng)初始值,作為創(chuàng)建子線程時(shí)父項(xiàng)值的函數(shù)。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
從類 java.lang.ThreadLocal 繼承的方法
get, initialValue, remove, set, withInitial

構(gòu)造函數(shù)詳細(xì)信息

InheritableThreadLocal

public InheritableThreadLocal()

方法詳情

childValue

protected T childValue(T parentValue)

計(jì)算此可繼承線程局部變量的子項(xiàng)初始值,作為創(chuàng)建子線程時(shí)父項(xiàng)值的函數(shù)。 在啟動(dòng)子線程之前,從父線程中調(diào)用此方法。

此方法僅返回其輸入?yún)?shù),如果需要不同的行為,則應(yīng)覆蓋該方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
parentValue 父線程的值

返回:

子線程的初始值

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)