2015-01-21 7 views
0

Quartz Scheduler에서 예약 된 작업이 있습니다. 작업에서 deleteOnExit에 파일을 표시했습니다.작업이 실행되면 Quartz Scheduler가 파일을 삭제합니까?

File file = new File(downloadedFile); 
file.deleteOnExit(); 

스케줄러가 배포 된 이후로이 파일이 삭제됩니까? 스케줄러가 작업을로드 할 때마다 작업을 트리거해야 할 때마다 작업의 새 인스턴스를 생성합니다. 하지만 프로세스가 끝나지 않을거야, 계속 실행됩니다, 그래서 deleteOnExit 메서드가 작동합니까?

답변

1

deleteOnExit()의 javadoc에 따르면 : ". 가상 머신이 종료 될 때이 추상 패스 명이 나타내는 파일 또는 디렉토리가 삭제 요청"

그래서 작업이 완료 될 때가 아니라 Java VM이 종료 될 때만 파일이 삭제됩니다.

+0

각 쿼츠 작업이 자체 VM인지, 아니면 계속되는 인스턴스입니까? –

+0

@Mike - 계속 될 것입니다. @ Adon, 맞습니다. –

+0

그건 내가 생각하기에, 그래서 deleteOnExit()는 효과가 없으며 파일은 삭제되지 않을 것이다. –