MSDAAB 데이터베이스 개체의 정적 인스턴스를 생성/재사용하는 싱글 톤 코드가 있습니다. 데이터베이스 개체는 생성 후 스레드 안전합니까? 나는 MSDAAB 문서에서 어떤 것도 찾을 수 없었습니다.MS DAAB 4.1 데이터베이스 개체가 스레드 안전합니까?
0
A
답변
1
this answer에도 불구하고 공식적인 대답은 아니오라고 생각합니다.
내가 말하는 이유는 Database
은 parameterCache
이라는 인스턴스 변수에 저장 프로 시저 매개 변수를 캐시합니다.
캐시에 항목이 추가되고 parameterCache
에 대한 잠금을 먼저 획득하지 않고도 ClearParameterCache()
방법을 사용하여 캐시를 삭제할 수 있습니다.
ClearParameterCache()
이 호출되면 한 스레드가 캐시에 항목이 있다고 생각한 다음 다른 스레드가 캐시를 지우는 상황을 피할 수 있으며 첫 번째 스레드가 제거 된 항목을 검색하고 예외가 발생하면 예외가 발생할 수 있습니다 던졌습니다.
좋은 소식은 ClearParameterCache()
이 호출되지 않는다면 최악의 경우 매개 변수가 여러 번 파생 될 수 있고 여러 스레드 (다른 스레드에 의해)에 여러 번 추가 될 수 있다는 것입니다. 나는 그것을 테스트하지는 않았지만 (여전히 비효율적 임에도 불구하고) 여전히 작동해야하는 것처럼 보입니다.
사실상 전화하지 않는 한 ClearParameterCache()
나는 괜찮다고 생각합니다.
관련 문제
- 1. 이렇게하면 개체가 스레드로부터 안전합니까?
- 2. 유니티로 DAAB 데이터베이스 개체를 넣으십시오.
- 3. 이 코드는 스레드 안전합니까?
- 4. 이 클래스는 스레드 안전합니까?
- 5. Delphi - TClientDataset은 스레드 안전합니까?
- 6. 은 System.DirectoryServices.AccountManagement.GroupPrincipal 스레드 안전합니까?
- 7. 데이터베이스 작업은 스레드로부터 안전합니까?
- 8. WebSphereMQ PCFMessageAgent/PCFAgent - 스레드 안전합니까?
- 9. 이 test_and_set 스레드 사용은 안전합니까?
- 10. jBASE 4.1 데이터베이스 멍청한 질문
- 11. DAAB v5.0을 사용하여 매개 변수가있는 MS 액세스 저장 쿼리 호출
- 12. MS Access의 VBA + 스레드
- 13. MS Visual Studio에서 명시 적 키워드는 4.1
- 14. 다중 스레드 데이터베이스 쿼리
- 15. 체인 된 스레드 안전 컬렉션은 스레드로부터 안전합니까?
- 16. VB.net : 스레드 안전 목록 솔루션이 실제로 안전합니까?
- 17. `const` 문자열 매개 변수 (스레드)가 안전합니까?
- 18. ms 액세스 데이터베이스 복사
- 19. MS Access 데이터베이스,
- 20. MS 액세스 데이터베이스
- 21. MS Access 데이터베이스
- 22. 쿼리 MS 액세스 데이터베이스
- 23. 데이터베이스 업데이트 - MVC3, Entity framework 4.1
- 24. 데이터베이스 트랜잭션 및 스레드
- 25. MS 데이터 액세스 응용 프로그램 블록 (daab)과 ADO.NET 데이터웨어 하우스 성능 비교 방법
- 26. 엔터프라이즈 라이브러리 DAAB for JAVA?
- 27. Qt SQL 스레드 데이터베이스 쿼리
- 28. 스레드간에 안전합니까?
- 29. "관계형 데이터베이스"를 가지고 있어도 안전합니까?
- 30. 부모 - 자식 데이터베이스 (MS ACCESS)