Looking for SEW8a 4xHIT Multithreading test answers and solutions? Browse our comprehensive collection of verified answers for SEW8a 4xHIT Multithreading at elearning.tgm.ac.at.
Get instant access to accurate answers and detailed explanations for your course questions. Our community-driven platform helps students succeed!
Ordne den Aussagen zu, ob sie auf das Erweitern der Thread-Klasse, das Implementieren des Runnable-Interfaces, oder auf beides gleichermaßen zutreffen.
Der folgende Code zeigt eine Main-Methode, in der die Werte A und B noch gewählt werden müssen:
public static void main(String[] args) throws InterruptedException {
CountDownLatch latch = new CountDownLatch(A); // <-- A
for (int i = 0; i < B; i++) { // <-- B
new Thread(new MyTask(latch)).start();
}
latch.await();
System.out.println("fertig");
}
Jeder der gestarteten Threads benötigt einige Zeit und ruft am Ende einmal latch.countDown(); auf.
Welche der folgenden Aussagen zu diesem Code sind wahr oder falsch?
Welche der folgenden Aussagen über critical sections (kritische Abschnitte) in Java sind wahr oder falsch?
Gegeben ist folgende Klasse:
public class Test {
public static synchronized void methode1() {
System.out.println("1");
System.out.println("2");
}
public static void methode2() {
synchronized (Test.class) {
System.out.println("a");
}
synchronized (Test.class) {
System.out.println("b");
}
}
}
Die beiden Methoden werden in unterschiedlichen Threads ausgeführt. Welche Reihenfolgen sind für die Ausgabe der Buchstaben und Ziffern möglich?
Gegeben ist folgende Klasse:
public class Test {
public static void methode1() {
System.out.println("1");
System.out.println("2");
}
public static void methode2() {
System.out.println("a");
System.out.println("b");
}
}
Die beiden Methoden werden in unterschiedlichen Threads ausgeführt. Welche Reihenfolgen sind für die Ausgabe der Buchstaben und Ziffern möglich?
Auf welche Methoden treffen die folgenden Aussagen über Thread-Zustandsübergänge zu?
Welche der folgenden Methoden bewirken beim Starten eines Threads was?
Der folgende Code zeigt eine Main-Methode:
public static void main(String[] args) throws InterruptedException {
Thread t = new Thread(new MyTask());
t.start();
// TODO
System.out.println("fertig");
}
Welcher Code muss statt // TODO eingefügt werden, damit die Ausgabe erst dann kommt, wenn der Hintergrundthread beendet wurde?
Hier ist ein Ausschnitt der Javadoc-Dokumentation von BlockingQueue:
Summary of BlockingQueue methods
| Throws exception | Special value | Blocks | Times out | |
|---|---|---|---|---|
| Insert | add(e) | offer(e) | put(e) | offer(e, time, unit) |
| Remove | remove() | poll() | take() | poll(time, unit) |
| Examine | element() | peek() | not applicable | not applicable |
Wähle die zutreffenden Aussagen zur Verwendung der BlockingQueue-Methoden: