Although asking for system preferences in a loop is an anti-pattern, applications often need to collect preferences at startup. A ::once
method would be useful to acquire preferences for startup (while blocking) and before waiting on preference changes in the main loop.