C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[21886] Re:dll과 멀티 스레드가 복잡적으로 관계된 문제입니다. ^^
새더군 [mmouse] 1210 읽음    2002-10-05 00:51
하나의 프로세스에는 같은 DLL 이 하나만 매핑되게 되어있습니다.
이유는 금방 아실것 같은데..
간단히 설명드리자면 만약 100K 짜리 DLL 이 있고 이 DLL 을 10 번 로드 했다치면
1메가를 사용하게 되는거죠 -_-;;
같은 내용인데 또다시 메모리에 올린다는게 비효율적인 작업이란겁니다...
그래서 동적으로 프로세스내부에 붙었다 없어졌다 하는 DLL 이란게 등장한 거구요..

그런데 어쩌다가 쓰레드당 DLL 이 필요하게 된거죠?
혹시 하고자 하는 작업을 말씀해 주시면..
허접하나마 조언을 드릴수 있습니다.

그럼 좋은 하루 되세요..


양동선 님이 쓰신 글 :
: 안녕하세요. 매번 이상한(?) 질문만 하게 되는군요. ^^
: 저도 고수님들 처럼 답변을 달아 보고 싶은데, 아직은 내공이
: 안되는군요. ^^
:
: 본격적으로 질문을 드리고 싶은게 있는데요.
:
: 첫째는요.
: 하나의 프로세서 내에서 동작하는 멀티스레드 환경에서 하나의 DLL을 마치
: 하나의 스레드당 하나의 DLL이 붙어서 동작하는것 처럼 구현 할 수 있냐는 거죠?
:
: 어떤분께서는 하나의 프로세서에 하나의 DLL만이 붙게 된다고 말씀하시더군요.
: 그러니깐 제가 생각하고 있는 하나의 프로세서에서 동작하는 멀티스레드에서는
: 하나의 스레드당 DLL을 붙게 하는건 말이 안된다고 하시더군요.
:
: 그래서 차선책으로 생각한게 프로세서를 하나 더 만드는 건데요.
: 그래도 자꾸 아쉬움이 남네요.
:
: Test를 해 봤는데, 역시 DLL이 각 스레드당 붙지 않는다는 결과를 얻게 됐구요.
:
: 참고로 저는 LoadLibrary라는 API 함수를 사용했습니다.
: 각 스레드가 호출 될때 가장 먼저 DLL을 LoadLibrary로 호출 했던거죠. ^^
:
: 어려운 질문이지만 답변 부탁 드립니다.

+ -

관련 글 리스트
21884 dll과 멀티 스레드가 복잡적으로 관계된 문제입니다. ^^ 양동선 766 2002/10/04
21886     Re:dll과 멀티 스레드가 복잡적으로 관계된 문제입니다. ^^ 새더군 1210 2002/10/05
21887         Re:Re:dll과 멀티 스레드가 복잡적으로 관계된 문제입니다. ^^ 양동선 838 2002/10/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.