@CallerSideMethod public Object __enqueueCall( Actor receiver, String methodName, Object args[], boolean isCB ) { if ( __stopped ) { if ( methodName.equals("stop") ) // ignore double stop return null; __addDeadLetter(receiver, methodName); // throw new RuntimeException("Actor " + this + " received message after being stopped " + methodName); } return __scheduler.enqueueCall(sender.get(), receiver, methodName, args, isCB); }
@CallerSideMethod public Object __enqueueCall( Actor receiver, String methodName, Object args[], boolean isCB ) { if ( __stopped ) { if ( methodName.equals("stop") ) // ignore double stop return null; __addDeadLetter(receiver, methodName); // throw new RuntimeException("Actor " + this + " received message after being stopped " + methodName); } return __scheduler.enqueueCall(sender.get(), receiver, methodName, args, isCB); }
sendingActor.__addDeadLetter((Actor) receiver, dl); throw new StoppedActorTargetedException(dl);
sendingActor.__addDeadLetter((Actor) receiver, dl); throw new StoppedActorTargetedException(dl);
Actor.connection.set(callEntry.getRemoteRefRegistry()); if (targetActor.__stopped) { targetActor.__addDeadLetter(targetActor,callEntry.getMethod().getName()); return true;
Actor.connection.set(callEntry.getRemoteRefRegistry()); if (targetActor.__stopped) { targetActor.__addDeadLetter(targetActor,callEntry.getMethod().getName()); return true;