Fiszki

Wilusz_PWiR

Test w formie fiszek
Ilość pytań: 140 Rozwiązywany: 8065 razy
Jak można poradzić sobie z problemem poślizgu?
Blokując dane współdzielone za pomocą zmiennej statycznej
Jest to niemożliwe
Zmieniając pętlę while na do while
żadne z powyższych
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
Kiedy dwa wątki jednocześnie próbują zapisać coś w tym samym miejscu w pamięci
Tylko w sytuacji gdy jeden z wątków jest wstrzymywany funkcją wait()
Kiedy dwa wątki próbują skorzystać z zablokowanego zasobu
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?
Kiedy wątek blokujący ukończy wszelkie działania na danych
Niezwłocznie po ich zablokowaniu
Kiedy drugi wątek poprosi o ich zwolnienie
Nigdy
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ę
Podczas optymalizacji kodu
Kiedy otrzymany wynik nie jest zgodny z naszym oczekiwaniem
Na poziomie projektowania architektury aplikacji
Kiedy otrzymany wynik nie jest zgodny z naszym oczekiwaniem
Czym jest StringIndexOutOfBoundsException?
Interfejsem
Wyjątkiem
Komentarzem
Metodą
Wyjątkiem
Jaką metodą klasy Thread można uruchomić wykonywanie wątku?
start()
startThread()
runThread()
run()
start()
Co zwraca metoda notify() klasy Object?
nie zwraca żadnej wartości
int
String
boolean
nie zwraca żadnej wartości
Jakie są wymagania interfejsu Runnable:
println()
toString()
main()
run()
run()
Jaki typ zwraca join() z klasy Thread?
List
Thread
nie zwraca nic, void
String
nie zwraca nic, void
Jaki typ zwraca isAlive() z klasy Thread?
Integer
String
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
Nie rzuci wyjątku
ExecutionException
NullPointerException
InterruptedException
Czym są semafory?
Mechanizm javy wprowadzony w ostatniej wersji
Rodzaj klasy w javie
To liczniki umożliwiające dostęp do sekcji krytycznej aplikacji jednemu lub wielu wątkom.
Sposobem wywołania metody
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ń
Tworzenie wątków umożliwia podział aplikacji na niezależne podprogramy, wykonujące współbieżnie określone zadania.
Żeby odciążyć pracę procesora
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?
Aby uzyskać dostęp do sekcji krytycznej
Żeby łatwiej odczytywać kod programu
W celu synchronizacji wątków i zapobiegania szkodliwej rywalizacji.
Żeby ograniczyć błędy
W celu synchronizacji wątków i zapobiegania szkodliwej rywalizacji.
Jaki problem jest rozwiązany przy stosowaniu tego rozwiązania?
Zablokowanie
Zakleszczenie
Spowolnienie
Opóźnienie
Zakleszczenie
Jakim słowem oznaczona jest sekcja krytyczna?
Session
Final
Synchronized
Critical
Synchronized
Głównym zadaniem monitora jest:
Monitorowanie zmiennych
Utworzenie graficznego interfejsu programu
Kontrolowanie dostępu do sekcji kodu
Wykonywanie instrukcji
Kontrolowanie dostępu do sekcji kodu
Do czego może doprowadzić wystąpienie błędnego stanu?
Żadne z powyższych
Do zgłoszenia wyjątku i przerwania wykonania
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?
Blokując zasób przed przetwarzaniem
Zgłaszając wyjątek w trakcie wykonania kodu jednego z wątków
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:
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
Wykonać metodę lock() na wątku
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