func (m *Master) runNewReduceWorker(WorkerID int,ReduceID int){
m.reduceTaskQueue[ReduceID].Init()
m.mutexForWorkerIDtoReduceID.Lock()
m.WorkerIDtoReduceID[WorkerID] = ReduceID//1
log.Print(" [runNewReduceWorker] m.WorkerIDtoReduceID[WorkerID] reduce id ",m.WorkerIDtoReduceID[WorkerID]," worker",WorkerID)
m.mutexForWorkerIDtoReduceID.Unlock()
m.Test_ClearReduceWorker(WorkerID,1)
}
func (m *Master)Test_ClearReduceWorker(workerID int,invalidPara int){
ClearReduceID := -1
m.mutexForWorkerIDtoReduceID.Lock()
ClearReduceID = m.WorkerIDtoReduceID[WorkerID]
m.mutexForWorkerIDtoReduceID.Unlock()
invalidPara = 2
log.Print("[Test_ClearReduceWorker] reduce id :",ClearReduceID , " worker ",workerID)
}
2020/12/30 10:17:10 [runNewReduceWorker] m.WorkerIDtoReduceID[WorkerID] reduce id 77 worker10
2020/12/30 10:17:10 [Test_ClearReduceWorker] reduce id :0 worker 10
在Test_ClearReduceWorker中呼叫時,reduce id就變成0了(not found),這是怎么回事?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/242534.html
標籤:go語言
上一篇:excel三維地圖
下一篇:Pyqt5-tools版本問題
