Как передать ссылку на массив в функцию в windows form на с#

Суть: надо сортировать массив параллельно 2-мя потоками (методом пузырька и методом выбора) я в функцию передаю копию массива поэтому потоки друг на друга не влияют,как передать ссылку на массив чтобы массив моментально изменялся для обоих потоков.

//сортировка пузырьком
public void Sort_puzir(int[] arr)
        {
            int num = Convert.ToInt32(textBox1.Text);
            int temp;
            for (int i = 0; i < num - 1; i++)
            {
                for (int j = 0; j < num - i - 1; j++)
                {
                    if (arr[j] > arr[j + 1])
                    {
                        temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
            }


        }
//сортировка выбором
        public void Sort_chose(int [] arr)
        {
            int num = Convert.ToInt32(textBox1.Text);
            int min, temp;

            for (int i = 0; i < num - 1; i++)
            {
                min = i;

                for (int j = i + 1; j < num; j++)
                {
                    if (arr[j] < arr[min])
                        min = j;
                }
                temp = arr[i];
                arr[i] = arr[min];
               arr[min] = temp;
            }


        }
//считываю массив с textbox
        private void button4_Click(object sender, EventArgs e)
        {
            int num = Convert.ToInt32(textBox1.Text);
            string s = textBox2.Text;
            string[] arrstring = new string[1];
            if (s != "")
            {
                arrstring = s.Split(' ');
            }
            int[] mas = new int[arrstring.Length - 1];
            for (int i = 0; i < arrstring.Length - 1; i++)
            {
                mas[i] = Convert.ToInt32(arrstring[i]);
            }
          //создаю потоки
            Thread myThread1 = new Thread(() => Sort_puzir(mas));
           Thread myThread2 = new Thread(() => Sort_chose(mas));
             myThread1.Start();

            myThread2.Start();
                myThread2.Join();
            myThread1.Join();
            for (int i = 0; i < num; i++)
                textBox5.Text += mas[i].ToString() + "  ";

Ответы (0 шт):