Ejemplo n.º 1
0
void Philosophere(int no)
{
     for(;;)
     {
        printf("%d is thinking\n", no);
          sleep(DELAY);
          printf("%d is hungry\n", no);
          wait_for_2fork(no);
          printf("%d is eating\n",no);
          sleep(DELAY);
          free_2fork(no);
/*       //deadlock   
          int left = no;
          int right = (no+1)%5;
          printf("%d is thinking\n", no);
          sleep(DELAY);
          printf("%d is hungry\n", no);
          wait_1fork(left);
          sleep(DELAY);
          wait_1fork(right);
          printf("%d is eating\n",no);
          sleep(DELAY);
          free_2fork(no);*/
     }
}
Ejemplo n.º 2
0
void philosopere(int no)
{
	srand(getpid());
	for (; ;) {
		
		printf("%d is thinking\n", no);
		sleep(DELAY);
		printf("%d is hungry\n", no);
		wait_for_2fork(no);
		printf("%d is eating\n", no);
		sleep(DELAY);
		free_2fork(no);
	}
}