RetrieveAllSessions的返回值为什么不能直接赋给sessionMap

来源:3-16 api之session处理与实现(下)

sd1700092

2018-08-02

观察到RetriveAllSessions这个函数返回的是一个map,它的key就是String,value就是SimpleSession这个struct。

那么在ops.go里,为什么不直接sessionMap=m呢?

而是要迭代地获取m的每个值,然后再Store到sessionMap里。

老师为什么呢?

写回答

1回答

艾文西

2018-08-11

这里要结合业务逻辑来看

由于我们这里的sessionMap是不断更新的,表示会有老化和新插入的session,因此为了保证不破坏sessionMap里面本来的数据,采用Range之后再Store的方式。

当然在我们这个场景里,基本上每次LoadFromDB都是全量的session信息,很少出现遗留,因此用=来赋值也是可以的

0
0

Go语言实战流媒体视频网站,高效学习Go高性能开发

从零开始,全面掌握Go语言编码的架构风格和开发Web的关键技能

996 学习 · 268 问题

查看课程