Я функцию factorial, запускаю сначала в app.js синхронно в общем потоке. А затем в app.worker.js в отдельном асинхронном потоке. В отдельном асинхронном потоке функция должна работать быстрей. Однако у меня всё на оборот. Посмотреть можно в codesandbox
codeSandbox