Форум: "Начинающим";
Текущий архив: 2012.02.26;
Скачать: [xml.tar.bz2];
Внизподождать завершения работы процедуры Найти похожие ветки
← →
Scott Storch © (2011-11-16 15:33) [0]Есть объект TServiceExecutor который запускает сервисы в приложении (импорт, экспорт, ...). У него есть 2 события: OnServiceStarted и OnServiceStopped. У себя в приложении пишу функцию запускающую сервис импорта. После того сервис импорта завершит свою работу, нужно выполнить определенные действия. Как правильно подождать, пока сервис импорта завешит работу. Правильно ли я сделал:
procedure {...}.event_ServiceStarted({...});
begin
{...}
FServiceIsRunning := True;
{...}
end;
procedure {...}.event_ServiceStopped({...});
begin
try
{...}
finally
FServiceIsRunning := False;
end;
end;
procedure {...}.Import({...});
begin
{...}
ServiceExecutor.ExecuteService({...}); // вызывается событие OnServiceStarted сервиса
repeat
// ждем, пока сервис не завершит свою работу
until
FServiceIsRunning;
// выполняем некоторые действия
{...}
end;
← →
Сергей М. © (2011-11-16 16:16) [1]
> Как правильно подождать
Туча разных способов существует, из которых самый неправильный - это пустой цикл с проверкой флага в в условии выхода.
← →
Dennis I. Komarov © (2011-11-16 17:44) [2]WaitFor...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2012.02.26;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c