SelectWorkload.go 799 B

12345678910111213141516171819202122
  1. package solver
  2. import (
  3. "os"
  4. "strconv"
  5. "time"
  6. )
  7. // Renders workload for an agent.
  8. // Checks if this feature can be used, otherwise exits.
  9. // Modify solver.row1s so it limits the workload to what is only desired
  10. func (solver *Solver) SelectWorkload() {
  11. if solver.Controller.Split > len(solver.row1s) {
  12. solver.Outp.Println("ERROR: Unable to divide the workload in " + strconv.Itoa(solver.Controller.Split) + " parts, when only " + strconv.Itoa(len(solver.row1s)) + " are available.\n\n")
  13. os.Exit(1)
  14. }
  15. defer solver.timeTrack(time.Now(), "Workload set")
  16. solver.Outp.Println("Setting workload")
  17. solver.Outp.Println("We are agent " + strconv.Itoa(solver.Controller.Part) + " of " + strconv.Itoa(solver.Controller.Split))
  18. workloads := solver.splitWorkload()
  19. solver.setWorkload(workloads)
  20. }