C/C++ 디자인 패턴 (10) — 퍼사드(Facade)
사진 썸네일 하나를 만들려면 파일을 읽고, 포맷에 맞게 디코딩하고, 비율을 유지하며 줄이고, JPEG로 인코딩해서 저장해야 한다. 이 다섯 단계를 화면마다 복사해 두면 순서나 품질 설정이 조금씩 달라지고, 하위 라이브러리를 바꿀…
사진 썸네일 하나를 만들려면 파일을 읽고, 포맷에 맞게 디코딩하고, 비율을 유지하며 줄이고, JPEG로 인코딩해서 저장해야 한다. 이 다섯 단계를 화면마다 복사해 두면 순서나 품질 설정이 조금씩 달라지고, 하위 라이브러리를 바꿀…
프로세스 간에 잠깐 쓰고 버릴 데이터를 주고받을 때 /tmp에 실제 파일을 만들면 디스크(또는 tmpfs) 경로가 남고, 정리를 깜빡하면 흔적이 계속 쌓인다. memfd_create()는 파일시스템 어디에도 나타나지 않는 익명 메모리 파일을 만들어…
파일 크기가 물리 메모리를 넘어서면 open().read()로 통째로 읽는 순간 프로세스 메모리가 그만큼 늘어나 OOM killer에 걸릴 수 있다. Python 표준 라이브러리 mmap은 파일을 프로세스의 가상 주소 공간에 매핑해서, 실제로 접근한…