Postpone processing KSycoca to the next event loop cycle
KSycoca::databaseChanged() signal can be emitted when refreshServices() calls KService::serviceByStorageId().
That is not good because refreshServices() will be called recursively and potentially invalidate m_components iterators in the first refreshServices().
Instead, postpone processing ksycoca database changes.
(cherry picked from commit 32cb447c)