Şimdi Ara

Thread Class vs Runnable Interface

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
5
Cevap
0
Favori
148
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Bunları öğrendim ama hangisini hangi durumlarda kullanmak mantıklı? Hocaya sordum ama düzgün cevap vermedi.



  • Amacin sadece multithread calistiracagin kod segmentini belirlemek ise Runnable. Farkli threadlere "bunu calistirin" diye verirsin, istedigin gibi schedule edersin.
    Thread'i extend ediyorsan, multithread calistiracagin run() metodundan fazlasini customize edecegin anlamina geliyor bu. Priority, Daemon vs gibi fieldlariyla oynayacagin ya da threadlocal de veri saklayacagin zamanda kullanirsin.

    Modern frameworklerle calisirken ikisini de kullanmazsin. Yapilacak islerin %99 unda bir kod blogunu async calistirmaktir amacin.

    Yine de ref olsun:https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html

    < Bu ileti mobil sürüm kullanılarak atıldı >




  • Runnable tavsiye edilir genelde.
  • Runnable sadece bir interface, bunun üzerine çalışacak kodu verirsin.
    Bu çalışacak kodu daha sonra thread ya da başka bir executor service ile istediğin stratejiye göre çalıştırmak sana kalmış.
    Thread üzerindeki start fonksiyonu JVM üzerinden yeni thread alıp runnable kodu çalıştırır.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.