Установите локальное значение потока в основном потоке и войдите в другой потокC#

Место общения программистов C#
Ответить
Anonymous
 Установите локальное значение потока в основном потоке и войдите в другой поток

Сообщение Anonymous »

Я использовал ThreadLocal для установки значения на одном конце и получения значения с помощью метода get на другом конце, код ниже

Код: Выделить всё

public class sample()
{
public  ThreadLocal tl1 = new ThreadLocal();
protected void Page_Load(object sender, EventArgs e)
{
Thread thread = new Thread(new ThreadStart(Myfunction));
setname("myval");
thread.Start();
}

public void setname(String name)
{
tl1.Value = name;
}
public  String getname()
{
return (String)tl1.Value;
}

public void Myfunction()
{
String value=getname();
}
}
это я правильно установил значение в методе setname ..

но происходит следующее: когда я пытаюсь получить его значение в отдельном потоке, имя заданного значения меняется на нулевое, хотя

Код: Выделить всё

ex: "myval" changed to "null"
как решить эту проблему

Подробнее здесь: https://stackoverflow.com/questions/159 ... her-thread
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»