Commit c8adc3dd authored by vicotor's avatar vicotor

fix bug

parent 4f0faa9a
...@@ -75,6 +75,34 @@ func withManager(idx int, endpoint string) { ...@@ -75,6 +75,34 @@ func withManager(idx int, endpoint string) {
} }
managerClient.Send(resource) managerClient.Send(resource)
} }
taskCh := make(chan *omanager.ManagerMessage_PushTaskMessage, 1000)
go func() {
for {
select {
case task, ok := <-taskCh:
if !ok {
return
}
demoResult := "a demo task result return"
msg := &omanager.WorkerMessage{
Message: &omanager.WorkerMessage_SubmitTaskResult{
SubmitTaskResult: &omanager.SubmitTaskResult{
TaskId: task.PushTaskMessage.TaskId,
ContainerSignature: make([]byte, 65),
MinerSignature: make([]byte, 65),
TaskResultBody: []byte(demoResult),
IsSuccessed: true,
TaskExecuteDuration: 10000,
},
},
}
if err := managerClient.Send(msg); err != nil {
log.WithField("endpoint", endpoint).Fatal("response device info failed", "err", err)
}
}
}
}()
for { for {
data, err := managerClient.Recv() data, err := managerClient.Recv()
if err != nil { if err != nil {
...@@ -149,23 +177,7 @@ func withManager(idx int, endpoint string) { ...@@ -149,23 +177,7 @@ func withManager(idx int, endpoint string) {
return return
case *omanager.ManagerMessage_PushTaskMessage: case *omanager.ManagerMessage_PushTaskMessage:
log.WithField("endpoint", endpoint).Info("got push task message") log.WithField("endpoint", endpoint).Info("got push task message")
demoResult := "a demo task result return" taskCh <- b
msg := &omanager.WorkerMessage{
Message: &omanager.WorkerMessage_SubmitTaskResult{
SubmitTaskResult: &omanager.SubmitTaskResult{
TaskId: b.PushTaskMessage.TaskId,
ContainerSignature: make([]byte, 65),
MinerSignature: make([]byte, 65),
TaskResultBody: []byte(demoResult),
IsSuccessed: true,
TaskExecuteDuration: 10000,
},
},
}
if err := managerClient.Send(msg); err != nil {
log.WithField("endpoint", endpoint).Fatal("response device info failed", "err", err)
return
}
case *omanager.ManagerMessage_ProofTaskResult: case *omanager.ManagerMessage_ProofTaskResult:
log.WithField("endpoint", endpoint).Info("got proof task result") log.WithField("endpoint", endpoint).Info("got proof task result")
......
...@@ -426,7 +426,6 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) { ...@@ -426,7 +426,6 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) {
workerCheckTicker := time.NewTicker(time.Second * time.Duration(checkDuration)) workerCheckTicker := time.NewTicker(time.Second * time.Duration(checkDuration))
defer workerCheckTicker.Stop() defer workerCheckTicker.Stop()
defer close(worker.quit)
for { for {
select { select {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment