//************************************************************************/ // definizione di una classe che rappresenta un processo: deve ereditare / // dalla classe di libreria Thread / //************************************************************************/ public class $NOMEPROCESSO extends Thread { // variabile che rappresenta il monitor private $NOMEMONITOR m; // altre variabili // costruttore della classe public $NOMEPROCESSO($NOMEMONITOR m, $PARAMETRIPROCESSO) { // inizializzazione della variabile monitor this.m = m; // altre inizializzazioni } // parte concorrente che rappresenta il codice del processo public void run() { // uso delle procedure Entry del monitor } // esempio: // public void run() // { // m.Entra($PARAMETRI); // ... usa la risorsa acquisita // m.Esci($PARAMETRI); // } }