Delphi [추가된 문법] DLL 정적 호출 시 지연 호출(Delayed)-델파이 2010 추가
2016.12.27 16:39
델파이에서 Dll 라이브러리의 루틴들을 다음과 같은 두가지 방법으로 호출해 사용하셨습니다.
1. 동적 호출
LoadLibrary, GetProcAddress, FreeLibrary등의 윈도우 함수를 사용하여 호출하는 방식
2, 정적 호출
procedure Display_About; stdcall;
External 'PAboutBox.dll';
정적 호출의 경우는 어플리케이션을 실행하면 라이브러리를 로드한 상태에서 프로시저나 함수를 호출하는 방식이기때문에
메모리 효율성에서 동적 방식보다 더 많은 메모리를 사용하게 됩니다.
이를 보강하기 위해 델파이 2010 버전부터 추가된 Delayed 라는 지시어를 사용할 수 있습니다. 라이브러리를 미리 로딩하는 것이 아니라 함수나 프로시자 호출시에 라이브러리가 로드되고 프로그램이 종료될때 라이브러리가 내려갑니다.
procedure Display_About; stdcall;
External 'PAboutBox.dll delayed';
만일 프로그램에서 정적 호출을 많이 사용하신다면 delayed 지시어만 추가하여도 메모리 효율성에서 훵씬 더 좋은 프로그램으로 업그레이드 하실 수 있습니다.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) | 관리자 | 2021.01.19 | 18020 |
공지 | [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) | 관리자 | 2020.11.16 | 16358 |
공지 | [10.4 시드니] What's NEW! 신기능 자세히 보기 | 관리자 | 2020.05.27 | 18982 |
공지 | RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 | 관리자 | 2018.10.23 | 24599 |
공지 | [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] | 관리자 | 2017.02.06 | 25964 |
공지 | [전체 목록] 이 달의 기술자료 & 기술레터 | 관리자 | 2017.02.06 | 21342 |
공지 | RAD스튜디오(델파이, C++빌더) - 시작하기 [1] | 관리자 | 2015.06.30 | 41918 |
공지 | RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) | 험프리 | 2014.01.16 | 177216 |
2 | 데이터스냅에서 제공하는 JSON 포맷 데이터 사용(분석)하기 [1] | Humphery | 2015.07.20 | 3820 |
1 | MidaConverter로 VCL 프로젝트를 FMX 프로젝트로 변환할 수 있습니다. | Humphery | 2015.06.04 | 723 |