J'ai le code de minuterie suivant, et basé sur l'exécution de la méthode d'exécution, si elle a réussi ou non, je voudrais retourner un booléen .Méthode appelée dans la méthode d'exécution d'une minuterie renvoie une valeur que je dois utiliser en amont
Cependant, j'obtiens le message d'erreur: La variable locale connectée définie dans une étendue englobante doit être finale ou effectivement définitive.
Comment puis-je contourner cela pour accomplir ce que je veux? Voici le code:
private boolean getSwitchesOnRc(NamedPipeClient pipe, DV_RC_EntryPoint rc_EntryPoint, int allowedAttempts, int counter){
final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
boolean connected = false;
ScheduledFuture<?> countdown = scheduler.schedule(new Runnable() {
@Override
public void run() {
connected = attemptRetrievalOfSwitches(pipe, rc_EntryPoint, allowedAttempts, counter);
}}, 1, TimeUnit.MINUTES);
return connected;
}
Pouvez-vous s'il vous plaît modifier le code? – Harriet