Wait for what was written to key to be stored, then have its getter answer what was.
A backend may take a write and give it back once storing it fails -- dconf does, with a database it cannot write -- and the "changed" saying so comes later, from the main loop: until then the getter answers what was asked for. A caller that has to know whether a write took calls this before reading the setting back. It blocks until the backend answers, as sync does.
| this |
a Settings instance |
| key |
the GSettings key (also the property name) written |