
다음 C# Hello World 프로그램을 실행하기 위해 작업 스케줄러에서 작업을 만들었습니다. 완료될 때까지 기다리면 콘솔 애플리케이션 실행이 완료되었음을 해당 기록에서 확인할 수 있습니다.하지만, 예약된 작업의 상태 열 아래에 해당 작업이 아직 실행 중이라고 표시됩니다. 모순이 뭐죠?
using System;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
}
}
}
스크린샷
답변1
주위에 뿌리를 가지고프로세스 탐색기. CONHOST.EXE 인스턴스가 여전히 숨어 있는 것을 발견할 수 있습니다(예: 콘솔 앱용으로 생성된 인스턴스). 이제 저는 1997년 이후로 C 코딩을 전혀 하지 않았으며 그것은 Borland C++(예: .NET 프레임워크 이전)를 사용했을 때였습니다. 그러나 코드에 명시적인 반환 코드가 없습니다. 이로 인해 작업 스케줄러가 종료를 감지하지 못하는지 확실하지 않습니다. 그럴 것 같지는 않지만 펀트 가치가 있습니다.