**User problem:**
Even if you run runJobs.php non stop, there is a delay.
Users got used to action=purge, but that doesn't help either here.
And there are more problems: https://www.mediawiki.org/w/index.php?title=Topic:Tb8v3cjly5vffl05
To sum it up: After adding a page to a category I click on the category link and the page is not there.
This is inacceptable.
https://en.wikipedia.org/wiki/Usability
**Hook problem:**
With onPageContentSaveComplete you can grab the categories that have changed by an edit. But if you delete related category memcaches, you end up with wrong caches when the user visits a category with freshly flushed cache before runJobs completed categorization.
Edit: Does $wgRunJobsAsync = false; turn off all job enqueueing? Then there is no hook problem I guess.
T125366 would fix it.
**Performance win?**
What is the performance win anyway? Categorization is done after page saving. No performance win for the user.