code: func zeroWorkItem(data []byte, workItemSize int) bool {
  	if len(data)%workItemSize != 0 {
  		data = data[:len(data)-(len(data)%workItemSize)]
  	}
  	dataLen := len(data)
  	for i := 0; i < dataLen; i += workItemSize {
  		j := 0
  		for j < workItemSize && data[i+j] == 0 {
  			j++
  		}
  		if j == workItemSize {
  			return true
  		}
  	}
  	return false
  }
docs: // this function looks for an entirely zero'd work item and returns true. This lets the client
  // control how often the batches get flushed (and it can end a request with a null byte)