다음을 통해 공유


SERVICE_DELAYED_AUTO_START_INFO 구조체(winsvc.h)

자동 시작 서비스의 지연된 자동 시작 설정을 포함합니다.

구문

typedef struct _SERVICE_DELAYED_AUTO_START_INFO {
  BOOL fDelayedAutostart;
} SERVICE_DELAYED_AUTO_START_INFO, *LPSERVICE_DELAYED_AUTO_START_INFO;

멤버

fDelayedAutostart

이 멤버가 TRUE이면 다른 자동 시작 서비스가 시작된 후 짧은 지연이 더해지면 서비스가 시작됩니다. 그렇지 않으면 시스템이 부팅되는 동안 서비스가 시작됩니다.

서비스가 자동 시작 서비스가 아닌 한 이 설정은 무시됩니다.

설명

모든 서비스는 지연된 자동 시작 서비스로 표시될 수 있습니다. 그러나 서비스가 자동 시작 서비스가 아닌 한 이 설정은 적용되지 않습니다. 변경 내용은 다음에 시스템을 시작할 때 적용됩니다.

SCM(서비스 제어 관리자)은 사용자 환경에 영향을 주지 않고 부팅 시 시스템 성능을 개선하기 위해 지연된 자동 시작 서비스를 지원합니다. SCM은 부팅하는 동안 지연된 자동 시작 서비스 목록을 만들고 지연이 경과한 후 한 번에 하나씩 시작하여 종속성을 적용합니다. 서비스가 시작되는 시기에 대한 구체적인 시간은 보장되지 않습니다. 사용자에게 미치는 영향을 최소화하기 위해 서비스에 대한 ServiceMain 스레드는 THREAD_PRIORITY_LOWEST 시작됩니다. ServiceMain 스레드에서 시작하는 스레드도 낮은 우선 순위로 실행되어야 합니다. 서비스가 SERVICE_RUNNING 상태에 들어갔다고 보고하면 ServiceMain 스레드의 우선 순위가 THREAD_PRIORITY_NORMAL.

지연된 자동 시작 서비스는 부하 순서 그룹의 멤버일 수 없습니다. 다른 자동 시작 서비스에 따라 달라질 수 있습니다. 자동 시작 서비스는 지연된 자동 시작 서비스에 따라 달라질 수 있지만 SCM이 부팅 시 종속 지연된 자동 시작 서비스를 시작해야 하므로 일반적으로 바람직하지 않습니다.

부팅 직후 StartService 함수를 사용하여 지연된 자동 시작 서비스가 요청 시작되면 시스템은 시작을 더 지연하는 대신 요청 시 서비스를 시작합니다. 이 상황이 정기적으로 발생할 가능성이 있는 경우 서비스는 지연된 자동 시작 서비스로 표시되지 않아야 합니다.

클라이언트가 로드되기 전에 지연된 자동 시작 서비스를 호출하는 경우 호출이 실패합니다. 따라서 클라이언트는 호출을 다시 시도하거나 요청이 서비스를 시작할 수 있도록 준비해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 winsvc.h(Windows.h 포함)

추가 정보

ChangeServiceConfig2

QueryServiceConfig2