SORU
14 EKİM 2010, PERŞEMBE


Arasında'in ve'In idam gönder ExecutorService ExecutorService seçin

Merak ediyordum, submit ExecutorService arasında seçmeliyim nasıl ya dönen değeri execute, beni ilgilendirmez? Eğer her iki test yapıp, dönen değeri dışında ikisi arasında herhangi bir fark göremedim.

    ExecutorService threadExecutor = Executors.newSingleThreadExecutor();
    threadExecutor.execute(new Task());

    ExecutorService threadExecutor = Executors.newSingleThreadExecutor();
    threadExecutor.submit(new Task());

CEVAP
21 EKİM 2010, PERŞEMBE


Bir fark hariç/hata işleme ile ilgili.

Throwable bazı üreten bir görev execute() sırada Thread görevi çalıştırmak için UncaughtExceptionHandler çağrılmasına neden olur. Varsayılan genellikle Throwable System.err, yığın izleme yazdıran UncaughtExceptionHandler eğer hiçbir özel işleyici yüklü çağrılacak.

Diğer taraftan, Throwable görev submit() ile sıraya tarafından oluşturulan 15* *çağrı üretilen Future Throwable bağlanacaktır. Bu konuda get() Future arama sebebine (ExecutionException getCause() arayarak erişilebilir) olarak orijinali ile ExecutionException Throwable bir durum oluşturur.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Maya Learning Channel

    Maya Learnin

    23 HAZİRAN 2010
  • MysteryGuitarMan

    MysteryGuita

    16 HAZİRAN 2006
  • Noam Erez

    Noam Erez

    3 NİSAN 2012