Perl에서 다른 Perl 프로그램에서 열려있는 파일을 테스트하려면 어떻게해야합니까? 두 번째 프로그램을 시작하기 전에 첫 번째 프로그램을 완료해야합니다.Perl에서 다른 프로그램이 파일을 열 었는지 어떻게 확인할 수 있습니까?
답변
flock
을 사용하여 두 프로그램을 조정할 수 있습니다. 첫 번째 프로그램은 파일을 잠그고 두 번째 프로그램도 잠금을 획득하려고 시도하며 첫 번째 프로그램이 잠금을 해제 할 때까지 차단합니다. Unix::Lsof
이 시스템에서 사용 가능한 flock()인가 :
alt text http://musicritics.com/wp/wp-content/uploads/2009/05/20061129morbo.gif
FILES 그런 식으로 작동하지 마십시오!
그러나 심각하게도 사람들은 flock 자문 잠금 장치를 사용하는 것이 가장 좋습니다. 다른 프로그램이 당신과 동시에 파일을 읽거나 쓰고 싶어하지 않을 것입니다.
좋은 게시글 및 실버 perl 배지가 있습니다. 축하해! – Ether
Windows에서 실행중인 경우 dwShareMode
이 0
인 경우 CreateFile
을 직접 호출 할 수 있습니다. MSDN에 따르면
:
은 삭제 읽거나 쓰기 액세스를 요청하는 경우 파일이나 장치를 여는 다른 프로세스를 방지합니다.
Win32API::File이 호출에 대한 액세스 권한을 부여합니다.
유닉스 사용자는 fuser으로 전화 할 수 있습니다.
상황에 대한 오해가있을 수 있으며 내 의견에 귀하의 경우에는 유용성이 제한 될 수 있지만 코드는/on을 (를) 사용하는 경우에 따라 달라질 수 있습니다. - 직렬 대기열을 사용하여 예측 가능한 순서로 실행되는 작업이 옵션 일 수 있음 . 응용 프로그램 (Perl로 작성)은 직렬 대기열을 명시 적으로 작성하고 관리해야합니다. 자세한 내용은 다음 링크를 참조하십시오. GCD
- 1. Perl에서 전체 파일을 다운로드했는지 어떻게 확인할 수 있습니까?
- 2. 내가 최적의 mysql 데이터베이스를 만들 었는지 어떻게 확인할 수 있습니까?
- 3. C++에서 다른 응용 프로그램이 파일을 열 었는지 확인하는 방법은 무엇입니까?
- 4. Perl에서 다음 줄이 비어 있는지 어떻게 확인할 수 있습니까?
- 5. Perl에서 어떻게 바이너리 파일을 만들 수 있습니까?
- 6. 매크로를 누가 열 었는지 확인하는 방법이 있습니까?
- 7. 정규식 패턴이 Perl에서 유효한지 어떻게 확인할 수 있습니까?
- 8. 어떻게 hxs 파일을 열 수 있습니까?
- 9. Mac에서 .diff 파일을 어떻게 열 수 있습니까?
- 10. 프로세스 (예 : 앱)에서 현재 어떤 파일을 열 었는지 알 수 있습니까?
- 11. Perl에서 여러 파일을 어떻게 tar 할 수 있습니까?
- 12. SOCKS 서버가 작동하는지 어떻게 확인할 수 있습니까?
- 13. MSBuild : 프로세스가 있는지 어떻게 확인할 수 있습니까?
- 14. "파일을 열 수 없습니다", 프로그램이/proc 파일을 열려고 할 때
- 15. Perl에서 배열의 다른 요소를 어떻게 비교할 수 있습니까?
- 16. JOptionPane가 가시인지 어떻게 확인할 수 있습니까?
- 17. 어떻게 확인할 수 있습니다
- 18. 파일이 있는지 어떻게 확인할 수 있습니까?
- 19. 코드 파일의 유효성을 어떻게 확인할 수 있습니까?
- 20. 자식 커밋이 다른 커밋의 부모인지 여부를 어떻게 확인할 수 있습니까?
- 21. 요소가 jQuery에서 다른 요소 안에 있는지 어떻게 확인할 수 있습니까?
- 22. C# 다른 양식에서 확인란을 선택하면 어떻게 확인할 수 있습니까?
- 23. ActiveMQ의 상황을 어떻게 확인할 수 있습니까?
- 24. actionscript에서 네트워크 경로의 파일을 열 수 있습니까?
- 25. 개체가 속한 클래스를 어떻게 확인할 수 있습니까?
- 26. 내 svn 연결을 어떻게 확인할 수 있습니까?
- 27. 개체 유형이 이미지인지 어떻게 확인할 수 있습니까?
- 28. URL 리디렉션을 어떻게 확인할 수 있습니까?
- 29. UISearchDisplayController의 searchResultsTableView가 표시되는지 어떻게 확인할 수 있습니까?
- 30. 구조체의 값이 변경되었는지 어떻게 확인할 수 있습니까?
이것은 올바른 해결책입니다. – MarkR