Worker 메시지

워커 분리 비용 기준

무거운 연산을 워커로 옮겨도 큰 데이터를 계속 복사하면 이득이 줄어듭니다. 메시지 크기와 종료 조건까지 설계해야 합니다.

clone

작은 값 복사

숫자, 문자열, 작은 객체는 구조화 복제로 보내도 부담이 작습니다.

transfer

큰 버퍼 이동

ArrayBuffer처럼 큰 바이너리는 Transferable로 소유권을 넘기면 복사 비용을 줄입니다.

chunk

진행률 나누기

긴 작업은 중간 결과와 진행률을 보내 사용자가 멈춘 화면으로 느끼지 않게 합니다.

stop

워커 종료 조건

작업이 끝나거나 화면을 떠나면 terminate로 정리해 메모리와 CPU를 회수합니다.

create postMessage compute reply terminate

오류는 onerror와 메시지 응답 양쪽에서 처리하고, 워커 내부에서는 DOM 대신 전달받은 데이터만 계산 대상으로 삼습니다.