livebook-dev / kino

Client-driven interactive widgets for Livebook

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ensure relevant processes are garbage collected before reevaluation

jonatanklosko opened this issue · comments

Given a cell like this:

Kino.start_child({DynamicSupervisor, name: :my_supervisor})

Currently it returns {:error, {:already_started, pid}} on some reevaluations, because the process from previous reevaluation is not killed on time. We need to garbage collect processes synchronously. We need to somehow integrate this into the referencing&monitoring mechanism we have.