2010-05-03 3 views
0

난 메모리 & 처리 로딩 된 DLL에 의심 보통 DLL을 공유 라이브러리 일단 프로세스 못해 같이 인 DLL해야 부하 이렇게 말함 그 후 다른 처리 방법, 메모리에 DLL (ex.advapi32.dll) 수단을로드 해당 프로세스에 advapi32.dll의 ... 어떻게, 여러 프로세스가 동일한 DLL을 가져 오는 경우, 다음 읽기 질문이 무엇인지 전혀 모르겠지만, 예시스템에 dll 프로세스가 있습니까?

+1

DLL은 그러나 그 메모리에 코드를 바로 로딩, 그들은이 공유되도록 매핑 된 메모리입니다. 싱글 톤이든 코드 가든 고유 한 인스턴스를 만드는 것은 라이브러리를 개발할 때 완전히 전적으로 사용자에게 달려 있습니다. –

답변

1

... 각 프로세스에 대해 공통의 위치를 ​​공유 할 수 있습니다 해당 DLL의 섹션 만 일반적으로 모든 프로세스에 매핑됩니다. 하나 개의 프로세스가 변화하게하는 다른 프로세스에게 보이지 않도록 한편, BSS (가변) 세그먼트와 같은 변경 부에서 각 공정에서의 복사본을 얻는다. 특정 변경이 자신의 DLL을위한 프로세스간에 공유하려면 공유, 당신은 DLL의 데이터 섹션을 표시 할 수 있습니다. 이 작업을 수행하는 방법은 사용중인 개발 도구에 따라 다릅니다.

+0

당 라슨, 감사 UR 답장을 ... 난 DLL을의 공유 사용에 대한 밝은 전망을 가지고 .... – Rajakumar

관련 문제