December 02, 2015

Selam;

Thread ile eşzamansız programlama arasındaki fark nedir? Eğer fark varsa hangisi nerede kullanılmalıdır?

Eşzamansız programlamayı bir teori olarak biliyordum thread falan işin içinde zannediyordum fakat şu sitede kodlarda thread kullanımı yok ve C# farklı bir yola gitmiş: https://gelecegiyazanlar.turkcell.com.tr/blog/eszamansiz-asenkron-programlama

Teşekkürler!

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

December 03, 2015

Alıntı (İbrahim):

>

Thread ile eşzamansız programlama arasındaki fark nedir?

Thread (iş parçacığı), işletim sisteminin sunduğu ve işletim birimi olarak kullandığı bir düzenektir. Her program bir iş parçacığı üzerinde işlemeye başlar.

Eşzamansız programlama ise aynı anda birden fazla iş yapma ile ilgili bir kavramdır. Bir çok yöntemle gerçekleştirilebilir:

  • Ek işler için yeni iş parçacıkları başlatmak

  • Tek iş parçacığı üzerinde fiberler aracılığıyla birden fazla iş görmek

  • Tek iş parçacığı üzerinde event-loop kullanmak

  • vs.

Alıntı:

>

Eğer fark varsa hangisi nerede kullanılmalıdır?

Eğer aynı program aynı anda birden fazla iş görecekse (veya takılmadan öyle yapıyormuş gibi algılanacaksa), eşzamansız programlama kullanılır. Bunun için iş parçacıklarından yararlanılabilir.

Ben şu bölümlerdeki bilgileri öneriyorum:

Fiberlerin iş parçacıkları ile bir karşılaştırması şurada:

http://ddili.org/ders/d/fiberler.html#ix_fiberler.%C3%A7oklu%20g%C3%B6rev

Alıntı:

>

Eşzamansız programlamayı bir teori olarak biliyordum thread falan işin içinde zannediyordum

Evet, ben de hep iş parçacıklarının gerekli olduğunu düşünürdüm ama programın bir iş için takılması engellendiği sürece, yani birden fazla işi devam ettirebildiği sürece iş parçacığına gerek yok.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]