Передача ссылочного параметра в поток - C#

Узнай цену своей работы

Формулировка задачи:

Есть класс и в нем объявлен метод, который принимает ссылочный параметр

ref string

, необходимо выполнить этот метод в новом потоке и передать этот параметр. Подскажите как этот параметр передать, с параметром по значению проблем нет. Так же возможен вариант присвоить эту ссылку полю класса. То есть примерно так:
class MyClass
{
   public string str1;
   public void Method1()
   {
      // тело метода
   }
}
 
MyClass myclass = new MyClass();
myclass.str1 = "some string";
Thread t = new Thread(Method1);
t.Start();
Как можно, передать ссылочный параметр подобно этому способу со строкой?

Решение задачи: «Передача ссылочного параметра в поток»

textual
Листинг программы
    internal class MyClass
    {
        private class stringWrapper
        {
            public string val;
        }
 
        private readonly stringWrapper str1 = new stringWrapper();
 
        public static void Method1(object param)
        {
            stringWrapper str1 = (stringWrapper) param;
            str1.val = "some new string";
        }
 
        private static void Main(string[] args)
        {
            MyClass myclass = new MyClass();
            myclass.str1.val = "some string";
            Thread t = new Thread(Method1);
            t.Start(myclass.str1);
        }
    }

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 4.091 из 5