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

  • Google Россия

    Google Ро

    9 Temmuz 2007
  • Hak5

    Hak5

    7 EYLÜL 2005
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006