Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> пул потоков ,работает верно только с бряком 
:(
    Опции темы
Jamon
Дата 30.1.2008, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 1.9.2007

Репутация: нет
Всего: нет



код:

Код

        static void Write(object o)
        {
            int count = int.Parse(o.ToString());
            ewbs[count].Navigate(loginURL);
        }

        void Work()
        {
            for (int i = 0; i < 2; i++)
            {
                EnhancedWebBrowser ewb = new EnhancedWebBrowser();
                ewb.Location = new Point(0, y);
                ewb.Size = new Size(500, 500);
                ewb.Name = i.ToString();
                if (i <proxy.Count) ewb.ProxyServer = proxy[i];
                ewb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(enhancedWebBrowser_DocumentCompleted);
                //ewb.Navigate(loginURL);
                y += 520;
                ewbs.Add(ewb);
                Program.form.Controls.Add(ewb);
                
                ThreadPool.QueueUserWorkItem(callBack, i);
            }
        }

  WaitCallback callBack = new WaitCallback(Write);

        private void button1_Click(object sender, EventArgs e)
        {
            Work();
        }


когда я говорю 
if (i <proxy.Count) ewb.ProxyServer = proxy[i];
то подключаю данный EnhancedWebBrowser к следующему проксику из списка.
Проблема в том ,что почему-то два браузера которые я создаю переходят по одному и тому же прокси-серверу ,а не по разным ,как мне надо. когда же я ставлю бряк на методе Write  (где и просходит переход) - то все правильно..
как поправить?
PM MAIL   Вверх
mr.DUDA
Дата 30.1.2008, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



А если заменить ThreadPool.QueueUserWorkItem на прямой вызов Write, работает правильно? И ещё, вместо int.Parse(o.ToString()) можно делать просто (int)o


--------------------
user posted image
PM MAIL WWW   Вверх
Jamon
Дата 30.1.2008, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 1.9.2007

Репутация: нет
Всего: нет



нет ,так тоже не работает. Также я попробовал пул заменить на коллекцию потоков с параметризированным делегатом
ParameterizedThreadStart ,в качестве параметра передаю то же самое - результат ничем не лучше...
PM MAIL   Вверх
mr.DUDA
Дата 31.1.2008, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Если и без пула не работает, значит ошибка при назначении прокси браузеру.


--------------------
user posted image
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0429 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.