mirror of
https://github.com/newnius/YAO-scheduler.git
synced 2025-12-13 07:46:43 +00:00
update
This commit is contained in:
@@ -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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user