Preliminary implementation
This commit is contained in:
parent
6a07f42304
commit
23e4d99071
@ -130,9 +130,12 @@ void get_into_lift(lift_info *lift, int direction) {
|
||||
|
||||
// Wait for person to get into lift
|
||||
Sleep(GETINSPEED);
|
||||
|
||||
--- // Set lift to enter
|
||||
--- // Signal passenger to enter
|
||||
//semaphore_wait(s);
|
||||
semaphore_wait(lift->stopsem);
|
||||
semaphore_signal(lift->stopsem);
|
||||
//--//semaphore_signal(s);
|
||||
// Set lift to enter
|
||||
// Signal passenger to enter
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
@ -183,8 +186,8 @@ void* lift_thread(void *p) {
|
||||
|
||||
// Wait for exit lift delay
|
||||
Sleep(GETOUTSPEED);
|
||||
|
||||
--- // Signal passenger to leave lift
|
||||
semaphore_signal(&lift.stopsem[i]);
|
||||
// Signal passenger to leave lift
|
||||
|
||||
// Check if that was the last passenger waiting for this floor
|
||||
if(!lift.stops[lift.position]) {
|
||||
@ -246,7 +249,11 @@ void* person_thread(void *p) {
|
||||
|
||||
// Print person waiting
|
||||
print_at_xy(NLIFTS*4+ floors[from].waitingtogoup +floors[from].waitingtogodown,NFLOORS-from, pr);
|
||||
|
||||
while (1){
|
||||
if (lift->direction == 0){
|
||||
lift
|
||||
}
|
||||
}
|
||||
--- // Wait for a lift to arrive (going up)
|
||||
} else {
|
||||
// One more person waiting to go down
|
||||
|
Loading…
x
Reference in New Issue
Block a user