ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Многопоточность через прокси
  #1  
Старый 14.01.2010, 18:39
Freedom
Участник форума
Регистрация: 02.07.2007
Сообщений: 189
Провел на форуме:
1843300

Репутация: 212
По умолчанию Многопоточность через прокси

Ребят объясните плиз принципы построения многопоточных приложений через прокси.

Дано. Многопоточная прога чекающая акки на валид.
Нужно сделать чтобы эта радость работала через список прокси.

Без прокси все классно работает.

если запускаешь поток с чеком акков через прокси, то если прокси невалиден то поток завершается и акк естественно не чекается и всё идет дальше.

Вопрос. Как все нормально организовать. Чекать прокси на валид перед чеком или как нибудь по другому ?
 
Ответить с цитированием

  #2  
Старый 14.01.2010, 18:42
drim
Участник форума
Регистрация: 27.08.2009
Сообщений: 131
Провел на форуме:
475164

Репутация: 33
По умолчанию

Цитата:
Сообщение от Freedom  
Ребят объясните плиз принципы построения многопоточных приложений через прокси.

Дано. Многопоточная прога чекающая акки на валид.
Нужно сделать чтобы эта радость работала через список прокси.

Без прокси все классно работает.

если запускаешь поток с чеком акков через прокси, то если прокси невалиден то поток завершается и акк естественно не чекается и всё идет дальше.

Вопрос. Как все нормально организовать. Чекать прокси на валид перед чеком или как нибудь по другому ?
чекать прокси на валид перед запуском программы
 
Ответить с цитированием

  #3  
Старый 14.01.2010, 18:50
Freedom
Участник форума
Регистрация: 02.07.2007
Сообщений: 189
Провел на форуме:
1843300

Репутация: 212
По умолчанию

Цитата:
Сообщение от drim  
чекать прокси на валид перед запуском программы

оригинальный подход ))))

киньте плиз тогда в личку валидных соксов )))
 
Ответить с цитированием

  #4  
Старый 14.01.2010, 18:51
ZdezBilYa
Участник форума
Регистрация: 29.08.2008
Сообщений: 151
Провел на форуме:
1551582

Репутация: 107
Отправить сообщение для ZdezBilYa с помощью ICQ
По умолчанию

Цитата:
Сообщение от Freedom  
если запускаешь поток с чеком акков через прокси, то если прокси невалиден то поток завершается и акк естественно не чекается и всё идет дальше.
используй try - except
 
Ответить с цитированием

  #5  
Старый 14.01.2010, 18:54
Freedom
Участник форума
Регистрация: 02.07.2007
Сообщений: 189
Провел на форуме:
1843300

Репутация: 212
По умолчанию

Цитата:
Сообщение от ZdezBilYa  
используй try - except
т.е.

try
http.post(запрос через прокси);
except
http.post(запрос без прокси);
end;

вот так ?
 
Ответить с цитированием

  #6  
Старый 14.01.2010, 18:57
ZdezBilYa
Участник форума
Регистрация: 29.08.2008
Сообщений: 151
Провел на форуме:
1551582

Репутация: 107
Отправить сообщение для ZdezBilYa с помощью ICQ
По умолчанию

нет.

try
http.post(запрос через прокси);
except
end;

в except можно делать, что хочешь, например удалять эту проксю, раз через нее соединиться не удалось
 
Ответить с цитированием

  #7  
Старый 14.01.2010, 18:58
drim
Участник форума
Регистрация: 27.08.2009
Сообщений: 131
Провел на форуме:
475164

Репутация: 33
По умолчанию

Цитата:
Сообщение от Freedom  
оригинальный подход ))))

киньте плиз тогда в личку валидных соксов )))
они продаются
 
Ответить с цитированием

  #8  
Старый 14.01.2010, 18:59
Freedom
Участник форума
Регистрация: 02.07.2007
Сообщений: 189
Провел на форуме:
1843300

Репутация: 212
По умолчанию

Цитата:
Сообщение от ZdezBilYa  
нет.

try
http.post(запрос через прокси);
except
end;

в except можно делать, что хочешь, например удалять эту проксю, раз через нее соединиться не удалось
так получается что поток завершается и акк не чекается (
 
Ответить с цитированием

  #9  
Старый 14.01.2010, 19:04
ZdezBilYa
Участник форума
Регистрация: 29.08.2008
Сообщений: 151
Провел на форуме:
1551582

Репутация: 107
Отправить сообщение для ZdezBilYa с помощью ICQ
По умолчанию

тогда вот так:

Код:
error:=true;
while error do
 begin
  error:=false;
  try
   http.post;
  except
   error:=true;
   берем другую прокси;
  end;
end;
будет повторяться пока запрос не пройдет без ошибок
 
Ответить с цитированием

  #10  
Старый 14.01.2010, 20:06
W!z@rD
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме:
1892597

Репутация: 836


Отправить сообщение для W!z@rD с помощью ICQ
По умолчанию

завести объект вида

enum Check
{
Unchecked,
Valid,
Invalid,
ProxyError
}

Список/Массив вида
id - CheckValue

Проверка
while(currentAccount.CheckValue == Check.ProxyError || currentAccount.CheckValue == Unchecked)
try
{
тут могут быть варианты вида Valid и Invalid.
break;
}
catch(SocketException)
{
currentAccount.CheckValue = Check.ProxyError;
removeProxy();
}
}
...

Все просто. В цикле проверяем поле которое отвечает за информацию о валидности акка и его статусе проверки.
Если проверили акк, то выставляем соответствующий статус, иначе если ловим ошибку сокета, присваиваем статус говорящий что трабла с прокси.

P.S. забываю уже дельфи
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
vk friends mark v1.0 by dex [Отмечаем друзей на фото] _dex_ Покупка, продажа, услуги в Соц. Сетях 3 24.11.2009 15:33
WoW через прокси. 5rap Болталка 3 01.09.2009 23:03
Скрипт работы через прокси PHP dr.Web PHP, PERL, MySQL, JavaScript 13 17.02.2009 02:28
Чот не хочет брутьть через прокси )) DeepBlue7 Болталка 5 03.02.2009 23:30
Настройка прокси соединения без измений в реестре. С++. artetch Статьи 0 18.11.2006 18:10



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ