11 Aralık 2016 Pazar

Callable Arayüzü

Giriş
Bu arayüz Java 5 ile gelmiştir. Runnable arayüzünden farklı olarak bir sonuç döner ve Exception fırlatabilir. İskeleti şöyledir.
Callable<T> task = new Callable<T>() {
  @Override
  public T call() throws Exception {
    ...
    return T;
  }
};
call metodu
İmzası şöyledir
@Override
public T call() throws Exception;
Executor ve Future İle Kullanımı
Callable nesnesi ExecutoService nesnesine verilir ve çalıştırılır. Sonuç Future nesnesi vasıtasıyla elde edilir. Şöyle yaparız.
MyCallable myCallable = ...;
ExecutorService executor = ...;
Future<Boolean> future = executor.submit (myCallable);
Daha sonra Future sonucuna erişmek için şöyle yaparız.
try {

  Boolean result = future.get();
} catch (InterruptedException | ExecutionException e1) {
  ...
}

Hiç yorum yok:

Yorum Gönder