func Start(
	handler func(<-chan payload) error,
	opt ...func(o *options)) (mailbox chan<- payload) {
	if handler == nil {
		panic("handler can not be nil")
	}
	o := new(options)
	for _, v := range opt {
		v(o)
	}
	if o.mailboxSize < 0 {
		o.mailboxSize = 0
	}
	q := make(chan payload, o.mailboxSize)
	go retry.Retry(
		func() error {
			return handler(q)
		},
		o.numberOfRetries,
		o.onError,
		o.period)
	mailbox = q
	return
}
// Start starts an actor, close mailbox to signal stop
// and handler should respect that, or use another convention of ypurs.
Start starts an actor, close mailbox to signal stop
and handler should respect that, or use another convention of ypurs.
// Start starts an actor close mailbox to signal stop // and handler should respect that or use another convention of ypurs .
func Start(
	handler func(<-chan payload) error,
	opt ...func(o *options)) (mailbox chan<- payload) {
	if handler == nil {
		panic("handler can not be nil")
	}
	o := new(options)
	for _, v := range opt {
		v(o)
	}
	if o.mailboxSize < 0 {
		o.mailboxSize = 0
	}
	q := make(chan payload, o.mailboxSize)
	go retry.Retry(
		func() error {
			return handler(q)
		},
		o.numberOfRetries,
		o.onError,
		o.period)
	mailbox = q
	return
}
func Start ( handler func ( <- chan payload ) error , opt ... func ( o * options ) ) ( mailbox chan <- payload ) { if handler == nil { panic ( " " ) } o := new ( options ) for _ , v := range opt { v ( o ) } if o . mailboxSize < 0 { o . mailboxSize = 0 } q := make ( chan payload , o . mailboxSize ) go retry . Retry ( func ( ) error { return handler ( q ) } , o . numberOfRetries , o . onError , o . period ) mailbox = q return }
Start starts an actor, close mailbox to signal stop
and handler should respect that, or use another convention of ypurs.
Start starts an actor close mailbox to signal stop and handler should respect that or use another convention of ypurs .