Wie Rahmen zu halten, wenn im Frühjahr neuen Thread zu erstellen?

Gevorg Harutyunyan:
System.out.println(LocaleContextHolder.getLocale()); // zh
new Thread(() -> {
    System.out.println(LocaleContextHolder.getLocale()); // en_US
}).start();

Von Muttergewinde, sehe ich, dass Kontext locale „zh“ von Kind-Thread ist, ich „en_US“ zu sehen. New Faden verliert den Kontext locale. Gibt es eine Möglichkeit Kontext neu erstellten Thread zu übergeben?

Tarun Gupta:

Nach dem Javadocs

Die LocaleContext wird von allen untergeordneten Threads durch den aktuellen Thread erzeugt vererbt werden, wenn die vererbbaren Flag auf wahr gesetzt ist.

Diese Mittel locale kann unter Verwendung des Verfahrens festgelegt werden , setLocale(Locale locale, boolean inheritable)indem inheritableals wahr. Also , bevor ein neues Kind Thread Laichen können Sie setLocale mit nennen inheritableGleichen true.

Ich denke du magst

Origin http://10.200.1.11:23101/article/api/json?id=478808&siteId=1
Empfohlen
Rangfolge