Makarna Yiyen Düşünürler Sorunu

Kısaca: makarna yiyen düşünürler sorunu paralellik, eşzamanlılık ve proseslerle ilgili klasik bir sorundur. 1965 yılında, Edsger Dijkstra tarafından önerilmiştir. ...devamı ☟

makarna yiyen düşünürler sorunu paralellik, eşzamanlılık ve proseslerle ilgili klasik bir sorundur. 1965 yılında, Edsger Dijkstra tarafından önerilmiştir. Sorun 5 kişilik bir masa var ve 5 düşünür var. Bu düşünürler sadece yemek yer ve düşünürler. Ancak bir düşünür makarnayı tek çatalla yemek zor olduğundan ancak 2 çatalla yiyebilir. Bir düşünürün önünde bir tabak makarna ve tabaklar arasında çatallar vardır. Düşünürler açlıktan ölmeden makarna yiyebilirler mi, yerlerse nasıl? Ayrıca bakınız * Uyuyan berber sorunu Kaynaklar *Chandy, K.M.; Misra, J. (1984). The Drinking Philosophers Problem. ACM Transactions on Programming Languages and Systems. *Dijkstra, E. W. (1971, June). Hierarchical ordering of sequential processes. Acta Informatica 1(2): 115–138. *Lehmann, D. J., Rabin M. O, (1981). On the Advantages of Free Choice: A Symmetric and Fully Distributed Solution to the Dining Philosophers Problem. Principles Of Programming Languages 1981 (POPL'81), pp. 133–138. Dış bağlantılar * Illustration of the dining philosophers problem (Java applet) * Discussion of the problem with solution code for 2 or 4 philosophers * Discussion of various solutions 1 * Discussion of various solutions 2 * Discussion of a solution using continuation based threads (cbthreads) * Distributed symmetric solutions * Programming the Dining Philosophers with Simulation * Interactive example of the Philosophers problem ( Java required) * Satan Comes to Dinner * Wot No Chickens? - Peter H. Welch proposed the Starving Philosophers variant that demonstrates an unfortunate consequence of the behaviour of Java thread monitors is to make thread starvation more likely than strictly necessary. * ThreadMentor * Solving The Dining Philosophers Problem With Asynchronous Agents

Kaynaklar

Vikipedi

Bu konuda henüz görüş yok.
Görüş/mesaj gerekli.
Markdown kullanılabilir.