Slide 30
Slide 30 text
Supervisor Strategy
decider := func(reason interface{}) actor.Directive {
// リカバリーの方法にリスタートを選択
return actor.RestartDirective
}
// 1000msec間隔で最大10回までリカバリーを試みる
supervisor := actor.NewOneForOneStrategy(10, 1000, decider)
props := actor.
FromProducer(func() actor.Actor { return &HelloActor{} }).
WithSupervisor(supervisor)
pid, err := actor.EmptyRootContext.Spawn(props)
if err != nil {
// エラー処理
}