The two issues below point to some fairly core problems with the current implementation of Napi::ThreadSafeFunction.
#653
#594
We may well have to create a new implementation, while at the same time retaining maximum backward compatibility and as smooth a transition path as possible for those who need the functionality mentioned in the issues above.