3. Załóżmy że pracują dwa wątki: wl (uruchomiony pierwszy) i w2 (uruchomiony drugi). Obydwa wątki mają równe priorytety. W chwili, gdy wątek 1 wykonuje podkreśloną instrukcję następuje przełączenie zadań i system przełącza kontekst na wątek 2. Zaznaczyć, co pojawi się na ekranie.
int wyświetl(char *s) { |
int wl(void *p) |
int w2(void *p) |
static CCriticalSection cs(); |
t |
t |
int w/ |
wyświetl ("0000"); |
wyświetl("1111") / |
return 0/ |
return a; | |
cs.Lock(); |
} |
} |
w=printf(s) ; | ||
cs.Unlock(); | ||
return w/ |
}