I have an SF actor service that works roughly like this:
- Upon startup in
RunAsync
the service creates predefined set of actors and activates all of them by calling an emptyStartAsync
method (defined on theIActor
-derived custom interface). - Each of the actors override
OnActivateAsync
in which it registers a reminder withdueTime
andperiod
both set to 10 seconds. - The actors do all the work within the
IRemindable.ReceiveReminderAsync
implementation. The work is usually quick (~100 milliseconds), but sometimes it can last for several minutes (I know that this is bad design, please do not comment on that :-)).
My question is: What happens when a reminder is due, but the actor still executes the previous callback code?
According to the documentation, the callbacks are queued, but I also wonder if the queue is limited somehow and what happens when the limit is reached?
Thanks for your feedback!
Palo