단일 스레드로 드라이브(C드라이브, D드라이브 .. 등)를 크롤링하기엔 시간이 너무 많이 걸려서,
멀티 스레드로 파일 시스템 크롤러를 만들어 보려고 합니다.
대략적인 디자인은,
생성자 - 소비자 패턴을 사용해서
생성자는 소비자인 스레드에게 탐색할 디렉토리를 건네주고,
소비자는 건네받은 디렉토리를 탐색하고 하위 디렉토리를 다시 생성자에게 건네주는 방식으로 생각하고 있는데요
그런데 이게 과연 효율적인 방법일까에 대한 궁금증이 생겼습니다.
또한 종료조건을 스레드가 잘못 잡아서 작업이 다 끝나지도 않았는데 종료될 가능성도 많아 보이구요...
(위 문제는 옛날에 질문했던 것이기는 한데 아직 해답은 못찾았습니다 ㅜㅜ)
과연 위와같이 구현을 해도 효율적인 모델이 될까요?
궁금합니다 ㅜㅜ