由于切片或数组数据比较大,业务量无法单次无法吞吐处理,那么就可以分批次处理,如:每100处理一次,具体实现如下:

func main() {

begin := 0   //循环起始值

end := 18   //循环结束值

        num := 100 //每次处理的数量

FOR:

all := []int{1,2,3,4,5,6,7,8,9,10.....}

for i:=begin; i<end; i++ {

all = append(all, i)

if i> 0 && i%num == 0 {

begin = i+1

goto PRINT

} else {

if end-begin<num{

   begin = end

}

}

}

PRINT:

  fmt.Println(all)

  if (begin < end) {

goto FOR

  }

}