내 응용 프로그램에서 다음 코드 조각이 : 디렉토리. 시간에 민감한 존재인가?
if (!Directory.Exists(myPath))
Directory.CreateDirectory(myPath);
나는 정기적으로 단위 테스트를 실행하면
가끔 가끔하지, 전달합니다. 디렉토리는 항상 존재합니다. (나는 그것을 확신했기 때문에 기술적으로 결코 코드에 의해 "생성"되지 않습니다). 하지만 매번 한 번씩Directory.Exists(myPath)
은
false
을 반환하므로 코드를 만들어 폴더를 만든 다음
UnauthorizedAccessException
!
여기에 재밌는 점은 CreateDirectory
에 중단 점을 넣은 다음 노란 화살표를 테스트 위로 이동하면 테스트가 true
을 반환합니다!
무슨 일 이니?
myPath
은 \\nameOfLocalMachine\sharedFolder
입니다. 공유는 안정적이고 지속적으로 사용됩니다. NET 4.0
방금 피들러가 3000 시퀀스 요청을 시뮬레이트했습니다. 175 실패 ... 모두 같은 메시지와 함께 : 경로에
액세스를 '\ nameOfLocalMachine \ sharedFolder \ randomFileName.json가'
프로덕션 코드에서 동일한 두 줄이 있습니다. Didnt는 이것을 가로 질러왔다. – Sievajet
무엇이 myPath인가? –
어떤 버전의 Windows, .NET 및 로컬, UNC 또는 매핑 된 드라이브로가는 경로입니까? – David