INNER CODE UNIT · Java

enqueueCall

RuedigerMoeller/kontraktor · attic/ElasticScheduler.java:195

    public Object enqueueCall(Actor sendingActor, Actor receiver, String methodName, Object args[], boolean isCB) {
        return enqueueCallFromRemote(null,sendingActor,receiver,methodName,args,isCB);
    }

    @Override
    public Object enqueueCallFromRemote(RemoteRegistry reg, Actor sendingActor, Actor receiver, String methodName, Object[] args, boolean isCB) {
        // System.out.println("dispatch "+methodName+" "+Thread.currentThread());
        // here sender + receiver are known in a ST context
        Actor actor = receiver.getActor();
        Method method = actor.__getCachedMethod(methodName, actor);

        int count = 0;
        // scan for callbacks in arguments ..
        for (int i = 0; i < args.length; i++) {
            Object arg = args[i];
            if ( arg instanceof Callback) {
                args[i] = new CallbackWrapper<>(sendingActor,(Callback<Object>) arg);
            }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…