postWhenChanged

Post value only when the value has changed to avoid loops, be aware that a pending update is ignored.