캡슐

나루 위키
둘러보기로 가기 검색하러 가기

캡슐은 나루 코드가 실행되는 환경이다. 최상위 캡슐을 제외한 모든 캡슐은 다른 캡슐 안에 포함되어 트리 구조를 이룬다.

파일, TCP 소켓, 호스트에서 제공하는 외부 객체 등의 자원은 캡슐에 귀속되며, 캡슐이 해제될 때 그 캡슐이 가진 자원도 함께 해제된다.

나루 프로그램은 실행 도중에 새로운 캡슐을 만들 수 있으며, 이렇게 만들어진 캡슐 또한 자원으로 취급된다.

논의

래킷에서 custodian이라고 부르는 것과 같다.

? 이름은 이것으로 괜찮은가? 다른 대안으로 이런 게 있다.

  • Custodian (원조인 래킷을 따라)
  • Sandbox
  • Box (?)
  • Module

? 만일 쓰레드 또는 비동기 실행과 연관되는 상황이라면, Trio의 nursery와 비슷한 역할을 캡슐이 맡게 될 것인가?