go 忽略当前错误时,需要将err置为nil ,再进行continue

//任务列表
func (jobMgr *JobMgr)JobList()(jobList []*common.Job, err error)  {

	var(
		resp *clientv3.GetResponse
		job *common.Job

	)

	//获取目录中所有的key
	if resp, err = G_jobMgr.Kv.Get(context.TODO(), common.JOB_SAVE_DIR, clientv3.WithPrefix()); err != nil{
		fmt.Println(err)
		return
	}

	//fmt.Println(resp.Kvs)
	// 初始化数组空间
	//jobList = make([]*common.Job, 0)

	for _, v := range resp.Kvs{
		//fmt.Println("kvs","----", string(v.Value))
		if err = json.Unmarshal(v.Value, &job); err != nil{
			err = nil
			fmt.Println("json.Unmarshal(v.Value, &job)", err)
			continue  //TODO:continue只是将当前解析错误的结构体job忽略了,但err并不为nil,所以会导致接受变量收到这个错误,所以需要将err置为nil
		}

		fmt.Println(job)
		jobList = append(jobList, job)
	}
	//fmt.Println("jobList", jobList)
	return
}复制代码


转载于:https://juejin.im/post/5d01c234f265da1b6b1cd011

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值