ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 23.04.2010, 19:45
GhostOnline
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме:
828081

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

Цитата:
Сообщение от _nic  
С сокетами легче синхронизировать
За базар ответишь? Разница-то какая?
 
Ответить с цитированием

  #12  
Старый 23.04.2010, 20:13
Sunstrider
Banned
Регистрация: 09.04.2010
Сообщений: 181
Провел на форуме:
475927

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

IDhttp легче в изучение
 
Ответить с цитированием

  #13  
Старый 23.04.2010, 20:50
M_script_
Постоянный
Регистрация: 29.10.2008
Сообщений: 306
Провел на форуме:
1819761

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

Возможных способов синхронизации потоков не так много и ни в одном из них нет особых сложностей.
 
Ответить с цитированием

  #14  
Старый 23.04.2010, 20:53
_nic
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме:
2982851

Репутация: 107


По умолчанию

Цитата:
Сообщение от GhostOnline  
Разница-то какая?
Можно даже ничего не синхронизировать.А если надо упорядочить доступ к каким то общим данным то крит.секций будет вполне достаточно.
Цитата:
Сообщение от Sunstrider  
IDhttp легче в изучение
за то rfc знать не будешь
 
Ответить с цитированием

  #15  
Старый 23.04.2010, 21:04
GhostOnline
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме:
828081

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

Цитата:
Сообщение от _nic  
Можно даже ничего не синхронизировать.А если надо упорядочить доступ к каким то общим данным то крит.секций будет вполне достаточно.

за то rfc знать не будешь
А крит секции это не синхронизация?
Низачод, сморозил чушь, а теперь чтобы оправдаться вообще загнался
Цитата:
Читать научись.Потом внимательно ещё раз прочти.Юный фанатик делфей.
Что-то мне сдается что юный фанатик дельфей старше тебя

Последний раз редактировалось GhostOnline; 23.04.2010 в 21:22..
 
Ответить с цитированием

  #16  
Старый 23.04.2010, 21:17
_nic
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме:
2982851

Репутация: 107


По умолчанию

Цитата:
Сообщение от GhostOnline  
А крит секции это не синхронизация?
Низачод, сморозил чушь, а теперь чтобы оправдаться вообще загнался
Читать научись.Потом внимательно ещё раз прочти.Юный фанатик делфей.
 
Ответить с цитированием

  #17  
Старый 24.04.2010, 00:19
1n0y
Участник форума
Регистрация: 09.05.2009
Сообщений: 186
Провел на форуме:
1682814

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

Цитата:
Сообщение от ange007  
Создавай все компоненты в Execute перед выполнением работы а не в процедурах.
И уничтожай потом в Destroy или где там у тебя завершение.
создаю

Код:
tnew = class(tthread)
 private
  http:TIdHTTP;
  cook:tidcookiemanager;
 protected
 procedure execute; override;end;


procedure tnew.execute;
begin
 http:=form1.idhttp1.Create;
 http.HandleRedirects:=true;
 cook:=form1.idcookiemanager1.Create(http);
 http.CookieManager:=cook;
<..>
end;
первый поток грузится, после выдаёт "a component named idcookiemanager1 already exist"
wft? что я делаю не так?
 
Ответить с цитированием

  #18  
Старый 24.04.2010, 00:48
GhostOnline
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме:
828081

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

cook := TIdCookieManager.Create(nil);

И мля, нах не надо его вообще создавать то
просто http.AllowCookies := True; и все

Цитата:
wft? что я делаю не так?
Ты все делаешь не так
form1.idcookiemanager1.Create(http);
что это за конструкотр такой? ты пытаешься создать объект другим компонентом?

Последний раз редактировалось GhostOnline; 24.04.2010 в 00:51..
 
Ответить с цитированием

  #19  
Старый 24.04.2010, 01:03
1n0y
Участник форума
Регистрация: 09.05.2009
Сообщений: 186
Провел на форуме:
1682814

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

Цитата:
Сообщение от GhostOnline  
Ты все делаешь не так
form1.idcookiemanager1.Create(http);
что это за конструкотр такой? ты пытаешься создать объект другим компонентом?
не ругайся ((:
хз, с какого-то примера скопипастил. ща папрбую как ты сказал.
 
Ответить с цитированием

  #20  
Старый 24.04.2010, 01:03
ange007
Новичок
Регистрация: 26.08.2009
Сообщений: 19
Провел на форуме:
977507

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

1n0y, нельзя в потоке просто так использовать компоненты с формы.
Создавай компоненты конкретно в самом потоке!

Вот что-то тип такого:
Код:
 TMyThread = class(TThread)

 private
    FCS: RTL_CRITICAL_SECTION;

    FH TidHTTP;
    FS: TIdIOHandlerStack;
    CM: TIdCookieManager;
...
 protected
    procedure Execute; override;
...
 public
    constructor Create;
    destructor Destroy; override;
....
....
procedure TMyThread.Execute;
var text:string;
begin
  {}
  FH := TidHTTP.Create;
  FS := TIdIOHandlerStack.Create;
  CM := TidCookieManager.Create;
  {--//--}
  FH.IOHandler := FS; 
  FH.HandleRedirects := true;
  FH.CookieManager := CM;
  FH.AllowCookies := true;
...
text := FH.Get('');
...
end;

constructor TMyThread.Create;
begin
  inherited Create(True);
...
  FreeOnTerminate := False;
  InitializeCriticalSection(FCS);
  Resume;
end;

destructor TMyThread.Destroy;
begin
  FreeAndNil(FH);
  FreeAndNil(FS);
  FreeAndNil(CM);
  DeleteCriticalSection(FCS);
end;

Последний раз редактировалось ange007; 24.04.2010 в 01:12..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка Indy 10.5.6 НTL С/С++, C#, Delphi, .NET, Asm 10 20.12.2009 09:15
Indy 10 - проблема mailbrush С/С++, C#, Delphi, .NET, Asm 9 25.07.2009 16:56
[Delphi] Threads (проблема) Flenov С/С++, C#, Delphi, .NET, Asm 11 17.03.2009 08:45



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


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




ANTICHAT.XYZ