本文整理汇总了Golang中github.com/chrislusf/glow/resource.Location类的典型用法代码示例。如果您正苦于以下问题:Golang Location类的具体用法?Golang Location怎么用?Golang Location使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Location类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: findAgentInformation
func (l *MasterResource) findAgentInformation(location resource.Location) (*resource.AgentInformation, bool) {
d, hasDc := l.Topology.GetDataCenter(location.DataCenter)
if !hasDc {
return nil, false
}
r, hasRack := d.Racks[location.Rack]
if !hasRack {
return nil, false
}
ai, ok := r.Agents[location.URL()]
return ai, ok
}
示例2: setupInputChannels
func (s *Scheduler) setupInputChannels(fc *flow.FlowContext, task *flow.Task, location resource.Location, waitGroup *sync.WaitGroup) {
if len(task.Inputs) > 0 {
return
}
ds := task.Outputs[0].Parent
if len(ds.ExternalInputChans) == 0 {
return
}
// connect local typed chan to remote raw chan
// write to the dataset location in the cluster so that the task can be retried if needed.
for i, inChan := range ds.ExternalInputChans {
inputChanName := fmt.Sprintf("%s-ct-%d-input-%d-p-%d", s.option.ExecutableFileHash, fc.Id, ds.Id, i)
// println("setup input channel for", task.Name(), "on", location.URL())
s.shardLocator.SetShardLocation(inputChanName, location)
rawChan, err := netchan.GetDirectSendChannel(inputChanName, location.URL(), waitGroup)
if err != nil {
log.Panic(err)
}
// println("writing", inputChanName, "to", location.URL())
netchan.ConnectTypedWriteChannelToRaw(inChan, rawChan, waitGroup)
}
}