def get_task(self, id, client=None):
        """Gets a named task from taskqueue

        If the task isn't found (backend 404), raises a
        :class:`gcloud.exceptions.NotFound`.
        :type id: string
        :param id: A task name to get

        :type client: :class:`gcloud.taskqueue.client.Client` or ``NoneType``
        :param client: Optional. The client to use.  If not passed, falls back
                       to the ``client`` stored on the current taskqueue.

        :rtype: :class:`_Task`.
        :returns: a task
        :raises: :class:`gcloud.exceptions.NotFound`
        """
        client = self._require_client(client)
        task = Task(taskqueue=self, id=id)
        try:
            response = client.connection.api_request(method='GET', path=task.path, _target_object=task)
            task._set_properties(response)
            return task
        except NotFound:
            return None