Thread Pool

Daha önceki yazılarda taskın ve threadın şu şekilde Runnable task = new TaskClass(task); new Thread(task).start();  oluşturalabileceğini yazmıştım. Bu yöntem tek taskı yerine getiren uygulamarda kullanışlı olsa da çokça task olan uygulamarla her task için bir thread oluşturmak gerektiğinden elverişli olmayacaktır. Her task için yeni bir thread başlatmak performans sorunlarına yol açar. Thread pool işte burada devreye […]

Thread Class

Thread sınıfı thread oluşturabilmek için gerekli constructorları ve threadları kontrol edebilmek için gerekli metodları içerir. Thread sınıfı Runnable interfacesini implement ettiği için,Thread sınıfı extend eden bir sınıf oluşturulup run metodu burada implement edilebilir ve bu sınıftan bir nesne oluşturulup start metoduna başvurulabilir.Ancak bu önerilen bir tasarım değildir. yield() metodu bir threadın diğer threadlara geçici olarak […]

Giriş | Task, Thread, Multithreading

Multithreading bir programın eş zamanlı olarak birden çok görev(task) yapabilmesini sağlar. Bu,thread sayesinde yapılır. Thread,programın yaptığı bir görevin başlangıcından sonuna kadar süren akıştır. Tek işlemcili sistemlerde(Resim A), threadlar CPU zamanını paylaşır(time sharing) ve işletim sistemi bu paylaşımdan sorumludur.Bu paylaşma işlemi,performans ve hafıza açısından büyük kolaylık sağlar çünkü çoğu zaman CPU boştadır,hiçbirşey yapmaz.(Mesela kullanıcıdan veri girmesini […]