Fiszki

Wilusz_PWiR

Test w formie fiszek
Ilość pytań: 140 Rozwiązywany: 6757 razy
Jak można poradzić sobie z problemem poślizgu?
żadne z powyższych
Blokując dane współdzielone za pomocą zmiennej statycznej
Zmieniając pętlę while na do while
Jest to niemożliwe
Blokując dane współdzielone za pomocą zmiennej statycznej
Kiedy może wystąpić problem poślizgu?
W sytuacji, gdy wątek zostaje zawieszony po sprawdzeniu warunku a przed wykonaniem czynności z nim związanych
Tylko w sytuacji gdy jeden z wątków jest wstrzymywany funkcją wait()
Kiedy dwa wątki próbują skorzystać z zablokowanego zasobu
Kiedy dwa wątki jednocześnie próbują zapisać coś w tym samym miejscu w pamięci
W sytuacji, gdy wątek zostaje zawieszony po sprawdzeniu warunku a przed wykonaniem czynności z nim związanych
Kiedy dane zostają zwolnione przez wątek działających na nich?
Nigdy
Kiedy wątek blokujący ukończy wszelkie działania na danych
Kiedy drugi wątek poprosi o ich zwolnienie
Niezwłocznie po ich zablokowaniu
Kiedy wątek blokujący ukończy wszelkie działania na danych
Kiedy wiedza o poślizgu jest przydatna podczas pracy nad aplikacją wielowątkową?
Wiedza ta nie przydaje się
Kiedy otrzymany wynik nie jest zgodny z naszym oczekiwaniem
Na poziomie projektowania architektury aplikacji
Podczas optymalizacji kodu
Kiedy otrzymany wynik nie jest zgodny z naszym oczekiwaniem
Czym jest StringIndexOutOfBoundsException?
Metodą
Interfejsem
Komentarzem
Wyjątkiem
Wyjątkiem
Jaką metodą klasy Thread można uruchomić wykonywanie wątku?
start()
run()
startThread()
runThread()
start()
Co zwraca metoda notify() klasy Object?
String
nie zwraca żadnej wartości
int
boolean
nie zwraca żadnej wartości
Jakie są wymagania interfejsu Runnable:
println()
main()
toString()
run()
run()
Jaki typ zwraca join() z klasy Thread?
nie zwraca nic, void
String
List
Thread
nie zwraca nic, void
Jaki typ zwraca isAlive() z klasy Thread?
String
Integer
boolean
Thread
boolean
Jaki typ Exception rzuci metoda join() z klasy Thread jeżeli zostanie przerwany wątek na którym została wykonana:
InterruptedException
NullPointerException
ExecutionException
Nie rzuci wyjątku
InterruptedException
Czym są semafory?
Rodzaj klasy w javie
Mechanizm javy wprowadzony w ostatniej wersji
Sposobem wywołania metody
To liczniki umożliwiające dostęp do sekcji krytycznej aplikacji jednemu lub wielu wątkom.
To liczniki umożliwiające dostęp do sekcji krytycznej aplikacji jednemu lub wielu wątkom.
Po co się tworzy wątki?
W celu zapobiegnięciu zakleszczeń
Żeby odciążyć pracę procesora
Tworzenie wątków umożliwia podział aplikacji na niezależne podprogramy, wykonujące współbieżnie określone zadania.
Przyspiesza działanie programu
Tworzenie wątków umożliwia podział aplikacji na niezależne podprogramy, wykonujące współbieżnie określone zadania.
W jakim celu stosujemy semafory?
Żeby łatwiej odczytywać kod programu
Żeby ograniczyć błędy
Aby uzyskać dostęp do sekcji krytycznej
W celu synchronizacji wątków i zapobiegania szkodliwej rywalizacji.
W celu synchronizacji wątków i zapobiegania szkodliwej rywalizacji.
Jaki problem jest rozwiązany przy stosowaniu tego rozwiązania?
Zablokowanie
Zakleszczenie
Opóźnienie
Spowolnienie
Zakleszczenie
Jakim słowem oznaczona jest sekcja krytyczna?
Final
Synchronized
Session
Critical
Synchronized
Głównym zadaniem monitora jest:
Utworzenie graficznego interfejsu programu
Kontrolowanie dostępu do sekcji kodu
Monitorowanie zmiennych
Wykonywanie instrukcji
Kontrolowanie dostępu do sekcji kodu
Do czego może doprowadzić wystąpienie błędnego stanu?
Do zgłoszenia wyjątku i przerwania wykonania
Żadne z powyższych
Do nieskończonego zapętlenia wykonania działania programu
Do zabicia wątku
Do zgłoszenia wyjątku i przerwania wykonania
Jak można w łatwy sposób doprowadzić do wystąpienia błędu stanu?
Zgłaszając wyjątek w trakcie wykonania kodu jednego z wątków
Blokując zasób przed przetwarzaniem
Uruchamiając wiele wątków przetwarzających ten sam zasób
Usypiając wątek po sprawdzeniu warunku przed przetwarzaniem niezablokowanego zasobu
Usypiając wątek po sprawdzeniu warunku przed przetwarzaniem niezablokowanego zasobu
Aby zablokować zasób dla jednego wątku możemy:
Wykonać metodę lock() na wątku
Dodać słowo locked definiując zasób
Dodać zmienną informującą o tym że zasób jest zablokowany przyjmująca wartości true lub false i odpowiednio ją obsługiwać przy wykorzystaniu zasobu.
Sprawić aby wątek dziedziczył z klasy ReentrantLock
Dodać zmienną informującą o tym że zasób jest zablokowany przyjmująca wartości true lub false i odpowiednio ją obsługiwać przy wykorzystaniu zasobu.

Powiązane tematy

#programowanie #pwir

Inne tryby