Galiba yanlış terim kullanmışım ama atomic, "kesintiye uğratılmadan yapılan" demek. Örneğin, bir veri tabanı programının "şu iki toblodaki şu iki değeri değiştir" gibi bir olanağı varsa, bu olanağın atomic olması, o iki değişimin kesintiye uğratılmadan gerçekleşmesi anlamına gelir.
İş parçacığı konusunda şurada yazdıklarımla aynı fikirdeyim: :)
Bir alıntı:
http://ddili.org/ders/d/es_zamanli.html
Alıntı:
> İşletim sistemi iş parçacıklarını önceden kestirilemeyecek anlarda duraksatır ve tekrar başlatır. Bunun sonucunda örneğin aşağıdaki kadar basit işlemler bile bir süre yarım kalmış olabilirler:
++i;
Yukarıdaki işlem aslında üç adımdan oluşur: Değişkenin değerinin okunması, değerin arttırılması ve tekrar değişkene atanması. İşletim sisteminin bu iş parçacığını duraksattığı bir anda bu adımlar sonradan devam edilmek üzere yarım kalmış olabilirler.
condition_variable'daki durum ise daha çok şöyle açıklanabilir: "bu değişkeni değiştirmeden önce onu okumakta olan kimse olmadığından emin ol". Yani, iş parçacığı kilit olayından bahsediliyor. Bu değişkenin kilidini eline geçiren değiştirirken başkaları okuyamıyor.
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]