def _refresh_group_nodes(self):
     # Coalesce multiple refreshes that happen in succession
     if self._group_nodes_need_updating:
         return
     else:
         self._group_nodes_need_updating = True
         fg_call_later(self._refresh_group_nodes_now, force=True)
 def bg_task():
     # Link parsing is I/O intensive, so do it on a background thread
     self.resource_links = revision.links()
     fg_call_later(self.update_children)