本文整理汇总了Golang中launchpad/net/mgo.Session.New方法的典型用法代码示例。如果您正苦于以下问题:Golang Session.New方法的具体用法?Golang Session.New怎么用?Golang Session.New使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类launchpad/net/mgo.Session
的用法示例。
在下文中一共展示了Session.New方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Crawl
func Crawl(pool *mgo.Session, du *DigestwUser, tl *TwTimeLine, resolveURL bool, done chan<- int) {
defer func() { done <- 0 }()
sess := pool.New()
defer sess.Close()
sa := NewStatsAll(du.TwUser.Screen_Name, sess)
var sid, first, last int64
for k, v := range *tl {
tmpTime, _ := time.Parse(time.RubyDate, v.Created_at)
tmpSec := tmpTime.Seconds()
if du.UTC_Offset != nil {
tmpSec += *du.UTC_Offset
v.Created_at = time.SecondsToUTC(tmpSec).Format(time.RubyDate)
}
if k == 0 {
sid = v.Id
last = tmpSec
}
addStats(sa, &v, resolveURL)
if k == (len(*tl) - 1) {
first = tmpSec
}
//log.Printf("id:%d", v.Id)
}
sa.Foreach(update)
// decide to the next execution time
du.SinceId = strconv.Itoa64(sid)
du.NextSeconds = time.Seconds() + (last - first)
if _, err := du.Upsert(sess); err != nil {
log.Print(err)
}
}