Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.07.2011, 23:29   #1
Lazio
Форумчанин
 
Регистрация: 25.02.2009
Сообщений: 113
По умолчанию Определение делегатов потоков в цикле

Где ошибка?

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;



namespace _1111
{

      
    class Program

    {

        void s(string parameter)
        {
                     

                Console.Write(parameter);
            
     
        }

   
        

        static void Main(string[] args)
        {

            Program m = new Program();

        
string[]  URL= new string[3];
           
            
            URL[0]="11";
            URL[1]="22";
            URL[2]="33";

            Thread[] t = new Thread[3];


            

            /*    t[0] = new Thread(new ThreadStart(delegate() { m.s(URL[0]); }));
                t[1] = new Thread(new ThreadStart(delegate() { m.s(URL[1]); }));
                t[2] = new Thread(new ThreadStart(delegate() { m.s(URL[2]); }));     это работает*/


            for (int i = 0; i < URL.Length; i++)
            {

                t[i] = new Thread(new ThreadStart(delegate() { m.s(URL[i]); }));  // это нет
            }
               
            
            
            
            for (int i = 0; i < t.Length; i++)
                {
                              

                    t[i].Start();
                }
          
                Console.Read();
        
        }
  
    }

}
Lazio вне форума Ответить с цитированием
Старый 18.07.2011, 00:43   #2
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Код:
for (int i = 0; i < URL.Length; i++)
{
        string urlItem = URL[i];
        t[i] = new Thread(new ThreadStart(delegate() { m.s(urlItem); }));
}
Carbon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Приоритеты потоков Soundkilla Помощь студентам 1 24.04.2011 19:37
Синхронизация потоков kardinal94 Общие вопросы Delphi 5 29.11.2010 21:13
COM, интерфейсы делегатов и WithEvents oldDed Общие вопросы .NET 0 14.11.2010 20:07
Синхронизация потоков в С++ erazer89 Помощь студентам 0 27.04.2010 20:14
Запуск потоков в цикле VALERO Общие вопросы Delphi 11 01.03.2009 14:57