本文整理匯總了Golang中github.com/henrylee2cn/pholcus/app/distribute.Task類的典型用法代碼示例。如果您正苦於以下問題:Golang Task類的具體用法?Golang Task怎麽用?Golang Task使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Task類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: addNewTask
// 服務器模式下,生成task並添加至庫
func (self *Logic) addNewTask() (tasksNum, spidersNum int) {
length := self.SpiderQueue.Len()
t := distribute.Task{}
// 從配置讀取字段
self.setTask(&t)
for i, sp := range self.SpiderQueue.GetAll() {
t.Spiders = append(t.Spiders, map[string]string{"name": sp.GetName(), "keyin": sp.GetKeyin()})
spidersNum++
// 每十個蜘蛛存為一個任務
if i > 0 && i%10 == 0 && length > 10 {
// 存入
one := t
self.TaskJar.Push(&one)
// logs.Log.App(" * [新增任務] 詳情: %#v", *t)
tasksNum++
// 清空spider
t.Spiders = []map[string]string{}
}
}
if len(t.Spiders) != 0 {
// 存入
one := t
self.TaskJar.Push(&one)
tasksNum++
}
return
}
示例2: setTask
func (self *Logic) setTask(task *distribute.Task) {
task.ThreadNum = self.AppConf.ThreadNum
task.Pausetime = self.AppConf.Pausetime
task.OutType = self.AppConf.OutType
task.DockerCap = self.AppConf.DockerCap
task.DockerQueueCap = self.AppConf.DockerQueueCap
task.SuccessInherit = self.AppConf.SuccessInherit
task.FailureInherit = self.AppConf.FailureInherit
task.Limit = self.AppConf.Limit
task.ProxyMinute = self.AppConf.ProxyMinute
task.Keyins = self.AppConf.Keyins
}
示例3: addNewTask
// 服務器模式下,生成task並添加至庫
func (self *Logic) addNewTask() (tasksNum, spidersNum int) {
length := self.SpiderQueue.Len()
t := distribute.Task{}
// 從配置讀取字段
t.ThreadNum = cache.Task.ThreadNum
t.Pausetime = cache.Task.Pausetime
t.OutType = cache.Task.OutType
t.DockerCap = cache.Task.DockerCap
t.DockerQueueCap = cache.Task.DockerQueueCap
t.MaxPage = cache.Task.MaxPage
for i, sp := range self.SpiderQueue.GetAll() {
t.Spiders = append(t.Spiders, map[string]string{"name": sp.GetName(), "keyword": sp.GetKeyword()})
spidersNum++
// 每十個蜘蛛存為一個任務
if i > 0 && i%10 == 0 && length > 10 {
// 存入
one := t
self.TaskJar.Push(&one)
// log.Printf(" * [新增任務] 詳情: %#v", *t)
tasksNum++
// 清空spider
t.Spiders = []map[string]string{}
}
}
if len(t.Spiders) != 0 {
// 存入
one := t
self.TaskJar.Push(&one)
// log.Printf(" * [新增任務] 詳情: %#v", *t)
tasksNum++
}
return
}
示例4: addNewTask
// 服務器模式下,生成task並添加至庫
func (self *Logic) addNewTask() (tasksNum, spidersNum int) {
length := self.SpiderQueue.Len()
t := distribute.Task{}
// 從配置讀取字段
t.ThreadNum = self.AppConf.ThreadNum
t.Pausetime = self.AppConf.Pausetime
t.OutType = self.AppConf.OutType
t.DockerCap = self.AppConf.DockerCap
t.DockerQueueCap = self.AppConf.DockerQueueCap
t.InheritDeduplication = self.AppConf.InheritDeduplication
t.DeduplicationTarget = self.AppConf.DeduplicationTarget
t.MaxPage = self.AppConf.MaxPage
t.Keywords = self.AppConf.Keywords
for i, sp := range self.SpiderQueue.GetAll() {
t.Spiders = append(t.Spiders, map[string]string{"name": sp.GetName(), "keyword": sp.GetKeyword()})
spidersNum++
// 每十個蜘蛛存為一個任務
if i > 0 && i%10 == 0 && length > 10 {
// 存入
one := t
self.TaskJar.Push(&one)
// logs.Log.Notice(" * [新增任務] 詳情: %#v", *t)
tasksNum++
// 清空spider
t.Spiders = []map[string]string{}
}
}
if len(t.Spiders) != 0 {
// 存入
one := t
self.TaskJar.Push(&one)
tasksNum++
}
return
}