

Tutorium2
Presentation
•
Computers
•
KG
•
Practice Problem
•
Medium
Nastassia Lukyanovich
Used 6+ times
FREE Resource
26 Slides • 2 Questions
1
Tutorium 2
• Sleep und Interrupt • ThreadSpeicher: Heap und Stack • Thread Scheduling Strategien • Race-Conditions
2
Sleep und Interrupt; wait und notify
Was ist der Unterschied zwischen sleep und wait?
3
Sleep und Interrupt; wait und notify
Was ist der Unterschied zwischen sleep und wait?
| Thread.sleep() | wait() |
|---|---|---|
Ziel | Kontrolle über Ausführungszeit von einem Thread | Synchronization zwischen mehreren Threads |
Aufruf auf | Aktuellen Thread | Beliebigen Objekt |
Kontext | Beliebig | Synchronized Block |
Aufwachen von | Thread.interrupt(), Zeit ist abgelaufen | notify() |
4
2.1: Thread-Ping-Pong
Betrachten Sie hierzu die Vorlagen die auf ISIS bereitgestellt sind zu diesem Tutorium. Implementieren Sie zwei Threads, die miteinander (unendlich lang) “Ping-Pong” spielen. Dazu soll ein Thread immer mit “Pong” auf die Nachricht “Ping” eines anderen Threads antworten. Wir betrachten die Vorgaben in tut02/src/main/java, mit den Dateien: PingPong.java und InterruptSleep.java.
5
2.1: Thread-Ping-Pong
Beachten Sie dazu:
Ein Thread gibt immer nur “Ping” aus, der andere immer nur “Pong”.
Die Nachricht wird nur ausgegeben, wenn zuvor die Nachricht des anderen Threads ausgegeben wurde.
Die Ausgabe wird unendlich lang wiederholt bis das Programm manuell beendet wird.a
6
2.1: Thread-Ping-Pong
Wie können Sie die Reihenfolge der Ausgaben sicherstellen ohne:
1. vorangegangene Ausgaben auf der Konsole zu überprüfen
2. ohne das Konzept von Monitoren (synchronized) zu benutzen
3. ohne einen dritten Thread, der die anderen beiden Threads steuert
7
8
9
10
11
2.2: Thread Speicher
Bevor wir den Heap und Stack betrachten, sollten wir zunächst klassifizieren, was eigentlich in diesen Speichern abgelegt werden soll. Beantworten Sie dazu die folgenden Fragen:
• Was sind lokale Variablen? Was sind Instanzvariablen? Was sind Klassenvariablen? Worin unterscheiden diese sich?
• Was sind primitive Variablen? Was sind Referenzvariablen? Warum sprechen wir von einer Referenz?
• Wo wird die Referenz, wo das referenzierte Datum gespeichert?
12
Multiple Select
Rot markierte Variablen sind...
Lokale Variablen
Instanzvariablen
Klassenvariablen
Primitiver Datentyp
Komplexer Datentyp
13
Fill in the Blanks
Type answer...
14
2.2: Thread Speicher
15
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | | |
Primitive Instanzvariablen | | |
Primitive Klassenvariablen | | |
Lokale Referenzvariablen | | |
Referenzvariablen, die Instanzvariablen sind | | |
Referenzvariablen, die Klassenvariablen sind | | |
16
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | |
Primitive Klassenvariablen | | |
Lokale Referenzvariablen | | |
Referenzvariablen, die Instanzvariablen sind | | |
Referenzvariablen, die Klassenvariablen sind | | |
17
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | + |
Primitive Klassenvariablen | | |
Lokale Referenzvariablen | | |
Referenzvariablen, die Instanzvariablen sind | | |
Referenzvariablen, die Klassenvariablen sind | |
18
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | + |
Primitive Klassenvariablen | | + |
Lokale Referenzvariablen | | |
Referenzvariablen, die Instanzvariablen sind | | |
Referenzvariablen, die Klassenvariablen sind | | |
19
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | + |
Primitive Klassenvariablen | | + |
Lokale Referenzvariablen | | + |
Referenzvariablen, die Instanzvariablen sind | | |
Referenzvariablen, die Klassenvariablen sind | | |
20
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | + |
Primitive Klassenvariablen | | + |
Lokale Referenzvariablen | | + |
Referenzvariablen, die Instanzvariablen sind | | + |
Referenzvariablen, die Klassenvariablen sind | | |
21
2.2: Thread Speicher
Variablen | Stack | Heap |
|---|---|---|
Lokale Primitive Variablen | + | |
Primitive Instanzvariablen | | + |
Primitive Klassenvariablen | | + |
Lokale Referenzvariablen | | + |
Referenzvariablen, die Instanzvariablen sind | | + |
Referenzvariablen, die Klassenvariablen sind | | + |
22
2.3: Thread Scheduling
Wofür braucht man einen Scheduler?
23
2.3: Thread Scheduling
Strategie | Erklärung |
|---|---|
Prioritätsscheduling | |
Präemptives Scheduling | |
FiFo | |
Time-slicing | |
24
2.3: Thread Scheduling
25
2.4: Race Conditions
Welche Race Conditions kennt ihr?
26
2.4: Race Conditions
27
2.4: Race Conditions
Danke für die Aufmerksamkeit!
28
2.4: Race Conditions
Tutorium 2
• Sleep und Interrupt • ThreadSpeicher: Heap und Stack • Thread Scheduling Strategien • Race-Conditions
Show answer
Auto Play
Slide 1 / 28
SLIDE
Similar Resources on Wayground
21 questions
Adjectives
Presentation
•
University
26 questions
ICT 9 FIRST QUARTER REVIEW
Presentation
•
9th Grade
20 questions
European Influences
Presentation
•
12th Grade
20 questions
YEAR 9 BIOLOGY REVISION
Presentation
•
9th Grade
20 questions
Chromosomes
Presentation
•
6th - 8th Grade
17 questions
Origin Of Life
Presentation
•
9th - 11th Grade
22 questions
Types of Living Things
Presentation
•
6th - 8th Grade
19 questions
BJC U5L1d2 Traversing a List
Presentation
•
10th Grade - University
Popular Resources on Wayground
15 questions
Grade 3 Simulation Assessment 1
Quiz
•
3rd Grade
22 questions
HCS Grade 4 Simulation Assessment_1 2526sy
Quiz
•
4th Grade
16 questions
Grade 3 Simulation Assessment 2
Quiz
•
3rd Grade
19 questions
HCS Grade 5 Simulation Assessment_1 2526sy
Quiz
•
5th Grade
17 questions
HCS Grade 4 Simulation Assessment_2 2526sy
Quiz
•
4th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
24 questions
HCS Grade 5 Simulation Assessment_2 2526sy
Quiz
•
5th Grade
20 questions
Math Review
Quiz
•
3rd Grade
Discover more resources for Computers
19 questions
Fire Safety
Quiz
•
KG - 2nd Grade
36 questions
8th Grade US History STAAR Review
Quiz
•
KG - University
20 questions
Capitalization in sentences
Quiz
•
KG - 4th Grade
19 questions
Disney Movies
Quiz
•
KG - 8th Grade
25 questions
Hidden Figures
Quiz
•
KG - 12th Grade
10 questions
Counting Nickels and Pennies
Quiz
•
KG - 2nd Grade
13 questions
Time
Quiz
•
KG - 2nd Grade
20 questions
Place Value
Quiz
•
KG - 3rd Grade