Get the current value of the underlying measurement.

        Calls the tracked function and stores the value in the wrapped
        measurement as a side-effect.

        :rtype: int, float, or None
        :return: The current value of the wrapped function, or `None` if it no
            longer exists.

def get_value(self):
        """Get the current value of the underlying measurement.

        Calls the tracked function and stores the value in the wrapped
        measurement as a side-effect.

        :rtype: int, float, or None
        :return: The current value of the wrapped function, or `None` if it no
            longer exists.
        """
        try:
            val = self.func()()
        except TypeError:  # The underlying function has been GC'd
            return None

        self.gauge_point._set(val)
        return self.gauge_point.get_value()