Показать сообщение отдельно
  #4  
Старый 09.08.2010, 16:00
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

в данном примере используется только один поток, который работает с файлом, поэтому синхронизировать нет необходимости. а вот что в мемо пишется "синхронизировано" это праильна. и еще дельфи рекомендует использовать free вместо destroy:
Цитата:
Destroys the thread object and releases the memory allocated to it.

destructor Destroy; override;

Description

Do not call Destroy in an application. Instead, use Free to destroy a thread when FreeOnTerminate is False.

Destroy signals the thread to terminate and then waits for the thread to return before calling the inherited Destroy method.
но, имхо, это не совсем удачный способ. я бы убрал вообще все Destroy, т.к. Get.FreeOnTerminate:= True; а в procedure TidHttpGet.Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Int64);
при if Terminated закрывал FidHTTP. тогда бы FidHTTP.Get просто ломался на exception.
но способов еще много есть)
Ответить с цитированием