sto cercando informazioni sulla programmazione concorrente in c++.
L'obiettivo finale è di realizzare un'applicazione che mi permetta di fare questo in c++:
a)I bambini si recano a pranzo in gruppi composti da un numero
variabile di bambini (da 2 a 6) e da una tata. La tata fa attendere i
bambini finché non trova un numero sufficiente di seggioline
contigue. Quando le trova fa sedere i bambini e attende che sia loro
servita la pappa e che manginoi. Al termine del pasto i bambini
(ovvero quando tutto il gruppo ha finito) tutti i bambini si alzano e
tornano con la tata in giardino, liberando i posti a sedere.
b)Intorno al tavolo operano due tate: la tata cameriera che riempie
ciclicamente i piattini dei bambini che sono seduti e non hanno il
pasto e la tata che pulisce, che rende di nuovo agibile il posto a
sedere una volta che il bambino lo ha liberato. Entrambe agiscono
indefinitamente girando intorno al tavolo. La tata cameriera ha a
disposizione infinite porzioni e la tata cameriera infiniti piatti. La tata
cameriera serve il pasto al bambino solo se ha già il piatto.
c)Risolvere il problema con monitor e semafori (realizzati come da
specifiche date a lezione) e produrre due applet (con la stessa interfaccia)
che utilizzino ciascuna una delle due implementazioni.
d)L’interfaccia deve consentire di generare nuovi gruppi di bambini
specificandone la numerosità e di modificare la velocità e la direzione
delle tate che girano intorno al tavolo. Infine l’interfaccia deve consentire di
scegliere la strategia di allocazione dei posti (best fit o worst fit).
I bambini, le tate ecc sono tutti thread.
Conoscete testi, howto, documenti vari che mi possano essere utili?
Altro dubbio, è possibile sostituire in qualche maniera le applet java in c++ per realizzare una sorta di interfaccia grafica? Grazie



.