Evet arkadaşlar, şimdi çok iş parçacıklı zeminleri serileştirmek
için urban lube kullanacağımız ilk tasarım modelimizle başlayalım.
Şimdiye kadar, kursun bu noktasına kadar şehir döngüsünün uygulamasını
tamamladığınızı ve olay döngüsü uygulamanızı test etmiş olmanızı bekliyorum.
Tamamen.
Ve hatasız olmasını bekliyorum ve şu ana kadar uyguladığınız
kütüphaneyi bile döngü haline getirebileceğinizden artık emin olduğunuzu varsayıyorum.
Beklenen şekilde çalışır.
Tamam.
Şimdi kursun bu bölümünde, çok iş
parçacıklı akışları serileştireceğimiz tasarım modelini anlayacağız.
Peki nedir bu?
Bunu anlayalım.
Diyelim ki çok iş parçacıklı bir programımız var.
Sadece çoklu iş parçacığı olan bir programımız var.
Tamam.
Ve ilgili yürütme mantığını çalıştıran 381, 382
ve TRADFRI üçlüsüne sahip olup olmadığımızı görelim.
Başka bir deyişle, üçlüleri uygulama kusurları olarak da adlandırdık.
Tamam.
Bu yüzden bu çok katmanlı programı mantıksal tek iş parçacıklı bir programa indirgemek istiyoruz.
Yani mantıklı kelimesi değil.
Bu çok iş parçacıklı programı tek bir mantıksal, tek iş parçacıklı programa indirgemek istiyoruz.
Ama şimdi çok iş parçacıklı bir programı tek iş parçacıklı bir
programa indirgemem gerektiğini söylediğimde, tabii ki bazı sorular ortaya çıkıyor.
Örneğin, ilk etapta tek iş parçacıklı bir program istiyorsak, geliştirici
neden ilk etapta bir programı çok iş parçacıklı olarak uyguladı.
Bu çok açık ve ilk sorudur.
Peki şimdi çok iş parçacıklı bir programı tek hedefli bir programa
indirgemeye ne gerek var? Geliştirici herhangi bir nedenden dolayı uygulamasını veya
programını çok iş parçacıklı olarak uyguladıysa, şimdi neden bu çok
iş parçacıklı programı tek bir iş parçacığına indirgemek istiyor? Pekala.
Peki buradaki roket bilimi nedir? Basitçe, bir
geliştirici neden uygulama kodunu yeniden düzenleyip birden
fazla iş parçacığı yerine tek bir
iş parçacığı başlatmasın? Sorun çözülmüş olacaktır.
Başvurusu tek başlıklı bir başvuru olacaktır.
Bu nedenle, geliştiricinin bu hedefe ulaşmak için hatalı döngüler adı verilen bir şeyi kullanması
gerekirken, bu da çok iş parçacıklı bir programı tek iş parçacıklı bir programa indirgemektir.
İşte söylemin bu bölümünde anlayacağımız şey buydu.
Bu üç sorunun cevabını bulacaktık.
Daha ileri gitmeden önce, ne tür uygulamaların çok iş parçacıklı olarak uygulanması
gerektiğini ve ne tür uygulamaların tek iş parçacıklı olarak uygulanması gerektiğini anlamaya
çalışalım. Eğer size yeni bir rastgele uygulama baltası verirsem ve size bu
uygulama baltasının işlevselliğini veya tasarımını söylersem, bana bunu söyleyebilecek bir konumda olmalısınız.
Bu uygulamayı çok iş parçacıklı mı yoksa tek iş parçacıklı bir
uygulama olarak mı uygulamak istersiniz? Öyleyse bir sonraki video dersinde ne
tür uygulamaları çok iş parçacıklı ya da tek iş parçacıklı
olarak uygulamak isteyeceğimizi tartışalım. Uygulamanın çok iş parçacıklı mı yoksa
tek iş parçacıklı mı olması gerektiğine karar veren kriter nedir?