Long description

Back

hash define FALSE 0

hash define TRUE 1

hash define N 2 forward slash asterisk number of processes asterisk forward slash

int turn semicolon forward slash asterisk whose turn is it question mark asterisk forward slash

int interested open box bracket N close box bracket semicolon forward slash asterisk all values initially 0 open parenthesis FALSE close parenthesis asterisk forward slash

void enter underscore region open parenthesis int process close parenthesis semicolon forward slash asterisk process is 0 or 1 asterisk forward slash

open curly bracket

int other semicolon forward slash asterisk number of the other process asterisk forward slash

other equals 1 minus process semicolon forward slash asterisk the opposite of process asterisk forward slash

interested open box bracket process close box bracket equals TRUE semicolon forward slash asterisk show that you are interested asterisk forward slash

turn equals process semicolon forward slash asterisk set flag asterisk forward slash

while open parenthesis turn equals equals process ampersand ampersand interested open box bracket other close box bracket equals equals TRUE close parenthesis forward slash asterisk null statement asterisk forward slash semicolon

close curly bracket

void leave underscore region open parenthesis int process close parenthesis forward slash asterisk process colon who is leaving asterisk forward slash

open curly bracket

interested open box bracket process close box bracket equals FALSE semicolon forward slash asterisk indicate departure from critical region asterisk close parenthesis

close curly bracket

Back