This type uses UnsafeCell internally and is Sync so it can live inside
Task (which is Send + Sync). The safety invariant is:
Only the hart that is currently running this task may access the
contents. Because a task is scheduled on exactly one hart at a time,
there is no concurrent access and no lock is needed.
During clone_task, the parent accesses its own TaskLocal fields
(safe – it is the running hart) and writes to the child’sTaskLocal
fields (safe – the child has not been added to the scheduler yet, so no
other hart can touch it).