1
0
mirror of https://github.com/newnius/YAO-scheduler.git synced 2025-12-13 07:46:43 +00:00
This commit is contained in:
2020-05-04 00:02:45 +08:00
parent 742ea0c0d4
commit b115c96b59

View File

@@ -333,7 +333,10 @@ func (scheduler *SchedulerFair) Schedule(job Job) {
func (scheduler *SchedulerFair) AcquireResource(job Job, task Task, nodes []NodeStatus) NodeStatus { func (scheduler *SchedulerFair) AcquireResource(job Job, task Task, nodes []NodeStatus) NodeStatus {
segID := rand.Intn(pool.poolsCount) segID := rand.Intn(pool.poolsCount)
res := NodeStatus{} res := NodeStatus{}
start := pool.pools[segID].Next start := &pool.pools[segID]
if start.Nodes == nil {
start = start.Next
}
locks := map[int]sync.Mutex{} locks := map[int]sync.Mutex{}
@@ -386,7 +389,7 @@ func (scheduler *SchedulerFair) AcquireResource(job Job, task Task, nodes []Node
break break
} }
cur = cur.Next cur = cur.Next
if cur == start { if cur.ID == start.ID {
break break
} }
} }
@@ -421,7 +424,7 @@ func (scheduler *SchedulerFair) AcquireResource(job Job, task Task, nodes []Node
break break
} }
cur = cur.Next cur = cur.Next
if cur == start { if cur.ID == start.ID {
break break
} }
} }
@@ -706,7 +709,7 @@ func (scheduler *SchedulerFair) Summary() MsgSummary {
} }
cur.Lock.Unlock() cur.Lock.Unlock()
cur = cur.Next cur = cur.Next
if cur == start { if cur.ID == start.ID {
break break
} }
} }