
React Native는 주요 세 개의 Thread로 실행됩니다.
위 세 개의 Thread가 서로 통신하면서 사용자가 사용할 수 있는 화면이 만들어집니다.
세 Thread는 버스 같은 역할을 하는 브릿지를 통해 통신합니다.
새 아키텍처는 기존 브릿지를 제거하고 Native UI 메서드를 직접 제어할 수 있게 했습니다. 중간 데이터 전달에 드는 시간 소모가 없기 때문에 훨씬 빨라졌습니다.
javascriptconst container = document.createElement(‘div’);
예를 들어 container라는 변수에 createElement한 값을 할당했을 때, container를 입력하고 "."을 누르면 관련 메서드들이 바로 나옵니다. 이것 또한 C++로 초기화된 DOM 요소의 참조값을 가지고 있기 때문입니다.
정리하면 JSI는 다른 자바스크립트 엔진을 사용할 수 있게 해주며, JS Thread에서 곧바로 Native 영역의 Thread와 통신할 수 있도록 해줍니다. 브릿지의 직렬화/역직렬화 작업이 사라졌기 때문에 훨씬 더 빠른 속도를 보여줍니다. 또한 C++로 작성되었기 때문에 스마트 TV나 시계에서도 동작할 수 있어 타겟층도 더 넓힐 수 있습니다.
// Comments