appDomains를 더 잘 이해하려고합니다. 내 이해에서 Windows 프로세스에서 모든 응용 프로그램을 실행합니다. 각 응용 프로그램은이 프로세스 내에 상주하는 자체 개체에 캡슐화됩니다. 이 객체는 공유 할 수없는 전역 변수를 보유합니다. 프로세스에있는 모든 오브젝트는 데이터를 서로 공유 할 수 없습니다. 내 이해에서 appDomain은 Windows 프로세스에있는 특수 객체입니다. 모든 작업은 할당 된 모든 어셈블리에 대한 참조를 유지합니다. 만약 내가 틀렸다면 누군가가 그것에 대해 더 자세히 설명 할 수 있거나 나를 바로 잡을 수 있습니다. 또한 모든 좋은 자원이 또한 할 것입니다. 여기에서 일어나고있는 것은 당신이 닷넷의 구현과 응용 프로그램 도메인의 개념를 혼동한다는 것이다처럼Windows의 AppDomain 이해
4
A
답변
8
는 소리가 난다.
먼저 개념부터 살펴 보겠습니다. 개념적으로는 스레드 또는 프로세스와 동일한 종류의 것으로 생각할 수 있습니다. 프로세스는 시작하는 데 상당히 비싸지 만 개별 프로세스가 소유하는 메모리간에 높은 수준의 보호/분리를 제공합니다. 쓰래드는 시작하기에 꽤 싸지만, 크로스 쓰레드 메모리 접근에 대한 보호는 적습니다. AppDomain은 기본적으로 프로세스 수준 보호 중 일부를 스레드에 제공합니다.
당신은이 개념으로 흥미로운 것을 할 수 있습니다. 예를 들어, 프로세스는 단일 AppDomain으로 제한되지 않으므로 하나의 프로세스를 공유하는 여러 개의 응용 프로그램을 가질 수 있으며 어느 응용 프로그램도 다른 응용 프로그램을 방해하거나 충돌하지 않도록 할 수 있습니다. 그러나 주된 이유는 구현과 관련이 있습니다.
. 관리되는 인터넷 언어는 관리자가 앱 외부의 어떤 것도 앱의 메모리를 부적절하게 방해하지 않을 수있는 메모리 모델로 설계되었습니다. 또한 쓰레기 수거를 위해 별도의 스레드를 사용하여 디자인 되었기 때문에 프로세스에서 하나의 스레드로 실행되는 앱으로 이어집니다. 하나의 스레드 만 사용하는 경우 은으로 시작하거나 추가 어셈블리를로드 할 수 있습니다. 그렇다면 AppDomain의 목적은 프로세스 내에서 앱 (및 메모리)을 캡슐화하는 것입니다. 어셈블리에 대한 참조를 유지하지만 개념과는 별도로 객체로 구현 될 수 있습니다.
관련 문제
- 1. Windows의 MSDTC 이해
- 2. AppDomain 및 threading
- 3. 최소 신뢰 AppDomain 완전 신뢰 AppDomain
- 4. 원격 : 서버에서 클라이언트 AppDomain/어셈블리 찾기 AppDomain
- 5. WCF service Appdomain details
- 6. .NET AppDomain confusion
- 7. 내부에서 AppDomain 언로드
- 8. AppDomain 만들기 .Net
- 9. TraceSource in TestDriven.NET AppDomain
- 10. 정확히 무엇입니까 Appdomain 재활용
- 11. AppDomain 및 현재 디렉터리
- 12. 자바 AppDomain 추상화 같은가요?
- 13. 단일 프로세스에서 다중 appdomain
- 14. AppDomain 어셈블리 언로드
- 15. IIS AppDomain 인스턴스화
- 16. 유행 통 이해 이해
- 17. CoffeeScript 목록 이해/배열 이해
- 18. appdomain 사이에 별도의 작업 디렉토리
- 19. AppDomain AssemblyResolve 이벤트가 Microsoft.Practices.EnterpriseLibrary.Common.resources를 묻습니다.
- 20. AppDomain 및 기본 창 메시지
- 21. AppDomain 및 구성 섹션 입력
- 22. AppDomain 및 보통 트러스트 환경
- 23. .NET 4.0 AppDomain : obsoleted Evidence
- 24. Windows의 Tomcat
- 25. Windows의 MonoDevelop
- 26. Windows의 이벤트
- 27. Windows의 Cron
- 28. Windows의 카푸치노
- 29. Windows의 AppleScript
- 30. Windows의 이진 출력
[이 블로그를보십시오.] (http://blogs.msdn.com/cbrumme/archive/2003/06/01/51466.aspx) –