인라이닝(Inlingin)

함수 기반 메모리 조각화를 줄이는데 유용하며 인라이닝 함수를 사용할경우 코드길이가 커지나 흐름변화가 줄어들며 코드를 더 선형적(단순한) 방식이 되고 프로그램 속도가 더 빨라지는 장점이 있다

(인라인이 붙어있을경우 C++, 코틀린에선 호출,인라인 작업을 비교하고 더 빠른것을 사용한다고 한다)

 

//일반방식
void print(){
    printf("Hello, world!\n");
}

int main(){
    print();
    return 0;
}

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
//인라인 방식
inline void test1() {
	printf("hello");
}

int main() {
	test1(); //printf("hello");
    return 0;
}
  인라인 방식 일반적인 호출
1 main 시작 main 시작
2 printf실행 test1으로 이동
3 main 종료 스택프레임 적재
4   printf 실행
5   스택 포인터 원위치
6   main으로 복귀,종료
실행속도 상대적으로 빠름 상대적으로 느림
메모리 사용 상대적으로 큼 상대적으로 적음

'CS' 카테고리의 다른 글

난독화  (1) 2023.05.03
개발방법론  (0) 2023.05.02
메모리 단편화  (0) 2023.04.08
캐시에 대하여  (1) 2023.04.07
교착상태(Dead Lock)  (1) 2023.04.02

+ Recent posts