Paralel algoritmalar kapıyı çaldığında, hata işlemeyi düşünmek için iyi bir zaman olabilir.
İlk başta hata kodları vardı. Emilenler. Onları görmezden gelmek serbestti, bu yüzden geç başarısız olabilir ve hata ayıklaması zor kod üretebilirsiniz.
Sonra istisnalar geldi. Bunlar meydana geldiklerinde görmezden gelinmeleri imkansız hale getirildi ve çoğu kişi (Joel hariç) onlardan daha çok hoşlanıyor.
Ve şimdi paralel koda yardım eden kütüphanelerimiz var. Sorun şu ki, paralel koddaki istisnaları paralel olmayan kodla olabildiğince kolay işleyemezsiniz. Bir görevi zaman uyumsuz olarak başlatırsanız ve bu bir istisna atarsa, gevşemesi için geçmişte yığın izleri yoktur; yapabileceğiniz en iyi şey onu yakalamak ve böyle bir nesne varsa görev nesnesine kaydetmektir. Bununla birlikte, istisnaların birincil gücünü yener: bunları kontrol etmelisiniz ve herhangi bir ek çaba harcamadan onları görmezden gelebilirsiniz , oysa tek iş parçacıklı kodda bir istisna uygun eylemleri tetikleyecektir (programınızı sonlandırmak anlamına gelse bile).
Dil uygulamaları veya kütüphaneler paralel koddaki hataları nasıl desteklemelidir?