여러 파일을 원자 적으로 잠그는 가장 좋은 방법은 무엇입니까? 내가 생각한 한 가지 가능성은 디렉토리에있는 .lock
파일입니다 (나는 다른 프로그램의 다른 인스턴스 인 프로그램에 대해서만 보호하고 있으며, 잠금을 무시한 다른 프로그램을 방해하지는 않습니다.) 그러나 모든 것 스레드 안전성에 대해 배웠던 "나쁜 생각!" 이것이 안전한 방법일까요? 원 자성 파일을 만들려고합니다. 따라서 파일을 만드는 데 성공하면 자물쇠가있는 것입니다. 이 문제를 어떻게 해결해야합니까?여러 파일을 원자 적으로 잠그는 것
필자는 자신의 버그 추적기 (주로 운동으로, 나는 거기서 좋은 해결책을 찾을 수 있음을 알고있다)를 작성하여 네트워크상의 파일에 버그를 저장한다. 나는 SVN과 같은 것을 상상한다. 하나의 디렉토리가 프로그램에 의해 인수되고, 추적자에 의해 관리되는 버그, 개정판, 스크린 샷 등을 잡는 데 사용된다. 나는 SVN이 여러 클라이언트가 정확히 같은 시간에 커밋을하지 못하도록하는 방법이 있다고 가정하고있다.
더 나은 대답은 클라이언트/서버 아키텍처로 이동하여 서버 만 파일에 액세스 할 수 있도록하는 것입니다. –
클라이언트/서버 아키텍처가이 응용 프로그램에 너무 복잡합니다. 대부분 저장소를 찾고 있습니다. – dlras2
어떤면에서는 더 복잡하고 다른면에서는 더 간단합니다. –