Question about background buffer and watch faces compared to widgets

I noticed that on widgets, unless the Glance or Main view is running, although onTemporal is called every 5 minutes, onBackgroundData is NOT called, so the data accumulates/is replaced in the background buffer until the Glance or Main view is running. This behavior is seeing on the real device and not in the simulator since the either the Glance or Main view is always up.

For watch faces, since it's always running, does it do the same while in sleep or is the onBackgroundData called as soon as data is received from Background.exit(), no matter what the state the watch face is in?