C# 값 튜플(ValueTuple) vs Tuple 성능 비교
ValueTuple은 구조체, Tuple은 클래스입니다. 이 한 줄이 성능 차이의 대부분을 설명합니다. 구조체인 ValueTuple은 스택 또는 포함하는 객체 내부에 저장되어 할당과 GC 비용이 적고, 클래스인 Tuple은 힙 할당과 GC 압력이 발생합니다. 실용적인 관점에서 둘의 속도, 메모리 차이를 간단한 코드와 함께 정리합니다.1. 핵심 차이 요약- ValueTuple: 구조체(struct), 필드가 공개이며(mutability) 이름 지정과 분해 할당 지원, 일반적으로 할당 없음(escape 시 제외), 빠름.- Tuple: 참조형(class), 불변(immutable), 항상 힙 할당, GC 대상, Item1/Item2 등만 제공, 느림.- 성능 포인트: 작은 데이터(예: 2~3개 값) 왕복 시..
더보기