Since we share render backends between the viewer and cache tasks now, we should ensure the render backend is thread safe.