powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проблема с сервисом
3 сообщений из 3, страница 1 из 1
Проблема с сервисом
    #32312383
Alenka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!
Пытаюсь написать сервис, столкнулась с проблемой: в методе Execute организовала цикл типа
While not Stop Do Begin
...
End;
Если внутри цикла не вызывать никаких методов, которые выбирают сообщения из очереди Windows, то не могу завершить сервис из панели инструментов. Нашла метод svc.Thread.processRequests. Правильно ли это. И второй вопрос: мне нужно, чтобы очередная итерация происходила с некоторой задержкой. Как это реализовать. Функции типа Sleep(n) не подходят, потому что в этом случае при снятии сервиса выдается ошибка. Правда потом он снимается, но все равно неприятно. То же происходит, если написать WaitforSingleObject(). Подскажите что делать?
...
Рейтинг: 0 / 0
Проблема с сервисом
    #32313162
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Execute - только тот цикл и processRequests + sleep(0), а для обработки твоей функциональности создай отдельный поток, в котором делай все, что хочешь.
...
Рейтинг: 0 / 0
Проблема с сервисом
    #32314323
Фотография SmaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
procedure TServiceControl.ServiceExecute(Sender: TService);
begin
// ServiceExecute
while not Terminated do begin
ServiceThread.ProcessRequests(True);
end;
end;
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проблема с сервисом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]