On Wed, Sep 19, 2018 at 5:27 PM Michaël COQUARD <[hidden email]> wrote:
I was expecting only native functions (BIFs / NIFs) are executed on the dirty schedulers.
Any work that is lengthy and not cooperative is better served with a task on the dirty scheduler. That way, we avoid blocking the scheduler thread which would mean we would stall processes. Long-running garbage collections are one such thing, so they can get backgrounded on the dirty scheduler. Once the GC is done, the process is moved back onto a "normal" scheduler.