def readPiece(pieceIndex)
      id = returnAndIncrRequestId
      return id if @state == :after_stop
      @requests.push [id, :read_piece, pieceIndex]
      @requestsSemaphore.signal
      id
    end
def readPiece(pieceIndex)
      id = returnAndIncrRequestId
      return id if @state == :after_stop
      @requests.push [id, :read_piece, pieceIndex]
      @requestsSemaphore.signal
      id
    end
Read a block of the torrent asynchronously.