Store current region 3d
Ok, got it, just copied the required info I needed

class ViewContext():

    def __init__(self, context):
        rv3d           = context.space_data.region_3d
        self._view_rot = rv3d.view_rotation.copy()
        self._view_mat = rv3d.view_matrix.copy()
        self._pers_mat = rv3d.perspective_matrix.copy()
        self._view_pers = rv3d.view_perspective
        self._is_perspective = rv3d.is_perspective
        self._region = ViewRegion(context.region)