2012-02-03 4 views
3

클래스의 함수를 호출하는 서버에서 스크립트가 실행 중입니다. 이것은 foreach가 데이터를 가져 오는 긴 함수로, 몇 시간 동안 실행되었으며 두 개 이상 계속 실행되는 것으로 추산됩니다.cron에서 호출되는 PHP 파일 업데이트

이제 다른 파일에서이 파일에 대한 업데이트를 요청 받았습니다. 내 질문은, 내가 서버 에서이 업데이 트하면, 현재 스크립트의 실행에 영향을 미칠 것입니다? 어떻게 작동합니까? 서버가 캐시 된 명령어를 가지고 있고 새 파일이 영향을 미치지 않습니까? 아니면 그렇게 될까요? 나는 혼란스러워!

답변

6

스크립트가 include no로 자기를 회상하지 않는 한 업데이트되지 않습니다. 스크립트가 처음 호출되면 메모리에 있습니다. 그러나 만약 당신이 재귀가 있고 그 자체로 reincludes 그러면 예 그것은 업데이트 된 버전이 될 것입니다.

1

@Iznogood가 쓴대로 스크립트가 다시로드되는지 알 수 없으므로 위험을 감수해야 할 이유가 무엇입니까? https://stackoverflow.com/a/7485831

고무시키는 :

while ps -p SCRIPT_PID; do sleep 1; done ; svn up /path/to/script 

: 당신은 실행이 완료된 후에 만 ​​업데이트를 실행하기 위해 다음과 같은 것을 사용할 수 있습니다

관련 문제