в данном примере используется только один поток, который работает с файлом, поэтому синхронизировать нет необходимости. а вот что в мемо пишется "синхронизировано" это праильна. и еще дельфи рекомендует использовать 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.
но способов еще много есть)