Доступ к статическим полям осуществляется с использованием такого имени класса:
public class Me()
{
public static int a=5;
}
Я могу получить к нему доступ с помощью Me.a
, поэтому он привязан к классу .
Но когда я смотрю на:
static ThreadLocal<int> _x = new ThreadLocal<int> (() => 3);
Это гарантирует, что каждый поток увидит другую копию _x
.
Разве мы только что не увидели, что static
относится к классу , а не к потоку ? Как ThreadLocal
удается дать каждому потоку другую копию _x
?