code: def get(self, name, request=None, timeout=5.0, throw=True):
          
          singlepv = isinstance(name, (bytes, unicode))
          if singlepv:
              return self._get_one(name, request=request, timeout=timeout, throw=throw)
  
          elif request is None:
              request = [None] * len(name)
  
          assert len(name) == len(request), (name, request)
  
          return cothread.WaitForAll(
              [cothread.Spawn(self._get_one, N, request=R, timeout=timeout, throw=throw,
                              raise_on_wait=True)
               for N, R in zip(name, request)]
          )
docs: Fetch current value of some number of PVs.
  
          :param name: A single name string or list of name strings
          :param request: A :py:class:`p4p.Value` or string to qualify this request, or None to use a default.
          :param float timeout: Operation timeout in seconds
          :param bool throw: When true, operation error throws an exception.  If False then the Exception is returned instead of the Value
  
          :returns: A p4p.Value or Exception, or list of same.  Subject to :py:ref:`unwrap`.
  
          When invoked with a single name then returns is a single value.
          When invoked with a list of name, then returns a list of values
  
          >>> ctxt = Context('pva')
          >>> V = ctxt.get('pv:name')
          >>> A, B = ctxt.get(['pv:1', 'pv:2'])
          >>>