Nebenläufige Programmierung in Java: Threads
|
|
- Dominic Fuhrmann
- vor 7 Jahren
- Abrufe
Transkript
1 Nebenläufige Programmierung in Java: Threads Wahlpflicht: Fortgeschrittene Programmierung in Java Jan Henke HAW Hamburg 10. Juni 2011 J. Henke (HAW) Threads 10. Juni / 18
2 Gliederung 1 Grundlagen Wiederholung: Threadgrundlagen Einfache Threads in Java 2 Fortgeschrittene Konzepte Executor Synchronisation J. Henke (HAW) Threads 10. Juni / 18
3 Gliederung 1 Grundlagen Wiederholung: Threadgrundlagen Einfache Threads in Java 2 Fortgeschrittene Konzepte Executor Synchronisation J. Henke (HAW) Threads 10. Juni / 18
4 Definition einen Threads Definition Ein Thread ist ein Programmteil, welcher parallel zum dem übrigen Programm ausgeführt wird, über einen eigenen Stack verfügt und außer diesem alle Ressourcen mit dem restlichen Prozess teilt. J. Henke (HAW) Threads 10. Juni / 18
5 Definition einen Threads Definition Ein Thread ist ein Programmteil, welcher parallel zum dem übrigen Programm ausgeführt wird, über einen eigenen Stack verfügt und außer diesem alle Ressourcen mit dem restlichen Prozess teilt. Zu beachten ist: Dieselbe Codezeile kann simultan von mehreren Threads ausgeführt werden. J. Henke (HAW) Threads 10. Juni / 18
6 Definition einen Threads Definition Ein Thread ist ein Programmteil, welcher parallel zum dem übrigen Programm ausgeführt wird, über einen eigenen Stack verfügt und außer diesem alle Ressourcen mit dem restlichen Prozess teilt. Zu beachten ist: Dieselbe Codezeile kann simultan von mehreren Threads ausgeführt werden. Variablen auf dem Heap sind im Allgemeinen nicht threadspezfisch. J. Henke (HAW) Threads 10. Juni / 18
7 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting J. Henke (HAW) Threads 10. Juni / 18
8 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting insbesondere bei I/O-Operationen wichtig J. Henke (HAW) Threads 10. Juni / 18
9 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting insbesondere bei I/O-Operationen wichtig Bessere Ausnutzung heutiger symmetrischer Multiprozessorsysteme (SMP) J. Henke (HAW) Threads 10. Juni / 18
10 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting insbesondere bei I/O-Operationen wichtig Bessere Ausnutzung heutiger symmetrischer Multiprozessorsysteme (SMP) Entkoppelung verschiedener Programmteile möglich, z.b.: J. Henke (HAW) Threads 10. Juni / 18
11 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting insbesondere bei I/O-Operationen wichtig Bessere Ausnutzung heutiger symmetrischer Multiprozessorsysteme (SMP) Entkoppelung verschiedener Programmteile möglich, z.b.: asynchrone Reaktion auf Events J. Henke (HAW) Threads 10. Juni / 18
12 Vorteil von Multithreaded Anwendungen Bessere Ausnutzung von Wartepausen, kein busy waiting insbesondere bei I/O-Operationen wichtig Bessere Ausnutzung heutiger symmetrischer Multiprozessorsysteme (SMP) Entkoppelung verschiedener Programmteile möglich, z.b.: asynchrone Reaktion auf Events Erzeuger-Verbraucher Muster J. Henke (HAW) Threads 10. Juni / 18
13 Gliederung 1 Grundlagen Wiederholung: Threadgrundlagen Einfache Threads in Java 2 Fortgeschrittene Konzepte Executor Synchronisation J. Henke (HAW) Threads 10. Juni / 18
14 Erzeugung eines neuen Threads Welche Ausgabe ergibt das folgende Codesegment? 1 Runnable torun = new Runnable ( ) { 2 O v e r r i d e 4 p u b l i c v o i d r u n ( ) 5 { 6 f o r ( i n t i = 0 ; i < 1 0 ; i ++) 7 { 8 System. out. p r i n t l n ( i ) ; 9 } 10 } 11 } ; Thread thread1 = new Thread ( torun ) ; 14 t h r e a d 1. s t a r t ( ) ; 15 Thread thread2 = new Thread ( torun ) ; 16 t h r e a d 2. s t a r t ( ) ; J. Henke (HAW) Threads 10. Juni / 18
15 Erzeugung eines neuen Threads Welche Ausgabe ergibt das folgende Codesegment? 1 Runnable torun = new Runnable ( ) { 2 O v e r r i d e 4 p u b l i c v o i d r u n ( ) 5 { 6 f o r ( i n t i = 0 ; i < 1 0 ; i ++) 7 { 8 System. out. p r i n t l n ( i ) ; 9 } 10 } 11 } ; Thread thread1 = new Thread ( torun ) ; 14 t h r e a d 1. s t a r t ( ) ; 15 Thread thread2 = new Thread ( torun ) ; 16 t h r e a d 2. s t a r t ( ) ; J. Henke (HAW) Threads 10. Juni / 18
16 Thread implementiert Runnable Die Klasse Thread implementiert selbst das Interface Runnable J. Henke (HAW) Threads 10. Juni / 18
17 Thread implementiert Runnable Die Klasse Thread implementiert selbst das Interface Runnable Alle Konstruktoren sind doppelt vorhanden, jeweils mit und ohne Runnable als Argument J. Henke (HAW) Threads 10. Juni / 18
18 Thread implementiert Runnable Die Klasse Thread implementiert selbst das Interface Runnable Alle Konstruktoren sind doppelt vorhanden, jeweils mit und ohne Runnable als Argument Thread erweitern und run() überschreiben J. Henke (HAW) Threads 10. Juni / 18
19 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: J. Henke (HAW) Threads 10. Juni / 18
20 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: Die statischen Methoden beinflussen den aktuellen Thread, welcher den Code aktuell ausführt, dazu zählen unter anderem: J. Henke (HAW) Threads 10. Juni / 18
21 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: Die statischen Methoden beinflussen den aktuellen Thread, welcher den Code aktuell ausführt, dazu zählen unter anderem: Thread.currentThread() liefert die Referenz auf der aktuellen Thread. J. Henke (HAW) Threads 10. Juni / 18
22 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: Die statischen Methoden beinflussen den aktuellen Thread, welcher den Code aktuell ausführt, dazu zählen unter anderem: Thread.currentThread() liefert die Referenz auf der aktuellen Thread. Thread.yield() gibt den Rest der aktuell zugeteilten Rechenzeit ab. (Verhalten ist nach Spezifikation nicht garantiert) J. Henke (HAW) Threads 10. Juni / 18
23 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: Die statischen Methoden beinflussen den aktuellen Thread, welcher den Code aktuell ausführt, dazu zählen unter anderem: Thread.currentThread() liefert die Referenz auf der aktuellen Thread. Thread.yield() gibt den Rest der aktuell zugeteilten Rechenzeit ab. (Verhalten ist nach Spezifikation nicht garantiert) Thread.sleep(long)/Thread.sleep(long, int) legt den aktuellen Thread für die angegebene Dauer schlafen. J. Henke (HAW) Threads 10. Juni / 18
24 Grundlegende Steuerung Die Klasse java.lang.thread bietet eine Reihe von Methoden an, um das Verhalten des (aktuellen) Threads zu beinflussen: Die statischen Methoden beinflussen den aktuellen Thread, welcher den Code aktuell ausführt, dazu zählen unter anderem: Thread.currentThread() liefert die Referenz auf der aktuellen Thread. Thread.yield() gibt den Rest der aktuell zugeteilten Rechenzeit ab. (Verhalten ist nach Spezifikation nicht garantiert) Thread.sleep(long)/Thread.sleep(long, int) legt den aktuellen Thread für die angegebene Dauer schlafen. Wenn der Thread vor dem Ablauf dieser Zeit per interrupt() geweckt wurde, wird eine (checked) InterruptedException ausgelöst. J. Henke (HAW) Threads 10. Juni / 18
25 Grundlegende Steuerung - Teil 2 Die nicht-statischen Methoden beeinflussen den Thread, auf dessen Referenz sie aufgerufen werden, dazu zählen unter anderem: J. Henke (HAW) Threads 10. Juni / 18
26 Grundlegende Steuerung - Teil 2 Die nicht-statischen Methoden beeinflussen den Thread, auf dessen Referenz sie aufgerufen werden, dazu zählen unter anderem: interrupt() weckt aktuell schlafende Threads. J. Henke (HAW) Threads 10. Juni / 18
27 Grundlegende Steuerung - Teil 2 Die nicht-statischen Methoden beeinflussen den Thread, auf dessen Referenz sie aufgerufen werden, dazu zählen unter anderem: interrupt() weckt aktuell schlafende Threads. join() der aktuell laufende Thread wartet, bis der referenzierte Thread abgearbeitet ist. J. Henke (HAW) Threads 10. Juni / 18
28 Grundlegende Steuerung - Teil 2 Die nicht-statischen Methoden beeinflussen den Thread, auf dessen Referenz sie aufgerufen werden, dazu zählen unter anderem: interrupt() weckt aktuell schlafende Threads. join() der aktuell laufende Thread wartet, bis der referenzierte Thread abgearbeitet ist. Getter und Setter für verschiedene Eigenschaften. J. Henke (HAW) Threads 10. Juni / 18
29 Grundlegende Steuerung - Teil 2 Die nicht-statischen Methoden beeinflussen den Thread, auf dessen Referenz sie aufgerufen werden, dazu zählen unter anderem: interrupt() weckt aktuell schlafende Threads. join() der aktuell laufende Thread wartet, bis der referenzierte Thread abgearbeitet ist. Getter und Setter für verschiedene Eigenschaften. stop() (deprecated!) bricht diesen Thread abrupt ab, kann daher zu inkonsitenen Verhalten führen und ist daher zu vermeiden. J. Henke (HAW) Threads 10. Juni / 18
30 Beenden der JVM bei Benutzung von Threads Die JVM (und damit das Programm) beendet sich nur wenn alle 1 Threads beendet sind! 1 (nicht-dämon) J. Henke (HAW) Threads 10. Juni / 18
31 Beenden der JVM bei Benutzung von Threads Die JVM (und damit das Programm) beendet sich nur wenn alle 1 Threads beendet sind! Hat man einen oder mehrere Threads, welche in einer Endlosschleife auf neue Arbeit warten, so muss man zu Beenden des Programms eine der folgenden Möglichkeiten implementieren: 1 (nicht-dämon) J. Henke (HAW) Threads 10. Juni / 18
32 Beenden der JVM bei Benutzung von Threads Die JVM (und damit das Programm) beendet sich nur wenn alle 1 Threads beendet sind! Hat man einen oder mehrere Threads, welche in einer Endlosschleife auf neue Arbeit warten, so muss man zu Beenden des Programms eine der folgenden Möglichkeiten implementieren: Jeden Thread einzeln beenden (z.b. über interrupt()) 1 (nicht-dämon) J. Henke (HAW) Threads 10. Juni / 18
33 Beenden der JVM bei Benutzung von Threads Die JVM (und damit das Programm) beendet sich nur wenn alle 1 Threads beendet sind! Hat man einen oder mehrere Threads, welche in einer Endlosschleife auf neue Arbeit warten, so muss man zu Beenden des Programms eine der folgenden Möglichkeiten implementieren: Jeden Thread einzeln beenden (z.b. über interrupt()) Über System.exit(int) die JVM hart beenden. 1 (nicht-dämon) J. Henke (HAW) Threads 10. Juni / 18
34 Beenden der JVM bei Benutzung von Threads Die JVM (und damit das Programm) beendet sich nur wenn alle 1 Threads beendet sind! Hat man einen oder mehrere Threads, welche in einer Endlosschleife auf neue Arbeit warten, so muss man zu Beenden des Programms eine der folgenden Möglichkeiten implementieren: Jeden Thread einzeln beenden (z.b. über interrupt()) Über System.exit(int) die JVM hart beenden. Diese Threads vor dem starten als Dämonen kennzeichnen (setdemon(true)), ein Dämonthread hindert die JVM nicht daran sich selbst zu beenden. 1 (nicht-dämon) J. Henke (HAW) Threads 10. Juni / 18
35 Gliederung 1 Grundlagen Wiederholung: Threadgrundlagen Einfache Threads in Java 2 Fortgeschrittene Konzepte Executor Synchronisation J. Henke (HAW) Threads 10. Juni / 18
36 Der Executor Threads lassen sich nur einmal und nur mit einem einzigen Runnable starten. Auch lässt sich der Startzeitpunkt nicht wählen. J. Henke (HAW) Threads 10. Juni / 18
37 Der Executor Threads lassen sich nur einmal und nur mit einem einzigen Runnable starten. Auch lässt sich der Startzeitpunkt nicht wählen. Seit Java 1.5 gibt es eine Lösung, welche dies Einschränkungen beseitigt: Das Interface java.util.concurrent.executer bzw. java.util.concurrent.executerservice. J. Henke (HAW) Threads 10. Juni / 18
38 Der Executor Threads lassen sich nur einmal und nur mit einem einzigen Runnable starten. Auch lässt sich der Startzeitpunkt nicht wählen. Seit Java 1.5 gibt es eine Lösung, welche dies Einschränkungen beseitigt: Das Interface java.util.concurrent.executer bzw. java.util.concurrent.executerservice. Mit execute(runnable) kann in implementierenden Klassen ein Runnable zur Bearbeitung eingereiht werden. J. Henke (HAW) Threads 10. Juni / 18
39 Der Executor Threads lassen sich nur einmal und nur mit einem einzigen Runnable starten. Auch lässt sich der Startzeitpunkt nicht wählen. Seit Java 1.5 gibt es eine Lösung, welche dies Einschränkungen beseitigt: Das Interface java.util.concurrent.executer bzw. java.util.concurrent.executerservice. Mit execute(runnable) kann in implementierenden Klassen ein Runnable zur Bearbeitung eingereiht werden. Details hängen von der konkreten Implementierung ab. J. Henke (HAW) Threads 10. Juni / 18
40 Der Executor Threads lassen sich nur einmal und nur mit einem einzigen Runnable starten. Auch lässt sich der Startzeitpunkt nicht wählen. Seit Java 1.5 gibt es eine Lösung, welche dies Einschränkungen beseitigt: Das Interface java.util.concurrent.executer bzw. java.util.concurrent.executerservice. Mit execute(runnable) kann in implementierenden Klassen ein Runnable zur Bearbeitung eingereiht werden. Details hängen von der konkreten Implementierung ab. java.util.concurrent.executors bietet Fabrikmethoden für verschiedene Implementierungen J. Henke (HAW) Threads 10. Juni / 18
41 Gliederung 1 Grundlagen Wiederholung: Threadgrundlagen Einfache Threads in Java 2 Fortgeschrittene Konzepte Executor Synchronisation J. Henke (HAW) Threads 10. Juni / 18
42 Warum synchronisieren Vielfach müssen Threads Daten mit dem übrigen Programm austauschen. Das Laufzeitverhalten von Threads ist aber nicht berechenbar, d.h. nach jeder verarbeiteten Maschienoperation kann ein Thread unterbrochen werden. J. Henke (HAW) Threads 10. Juni / 18
43 Warum synchronisieren Vielfach müssen Threads Daten mit dem übrigen Programm austauschen. Das Laufzeitverhalten von Threads ist aber nicht berechenbar, d.h. nach jeder verarbeiteten Maschienoperation kann ein Thread unterbrochen werden. Da Schreibeoperationen in der Regel aus mehrern Maschienoperationen bestehen, müssen diese besonders geschützt werden, um inkonsistente (d.h. nur teilweise geschriebene) Daten zu vermeiden. J. Henke (HAW) Threads 10. Juni / 18
44 Das Schlüsselwort synchronized Eine einfache Methode Synchronisation in Java zu realisieren, ist das Schlüsselwort synchronized in der Definition einer Methode. J. Henke (HAW) Threads 10. Juni / 18
45 Das Schlüsselwort synchronized Eine einfache Methode Synchronisation in Java zu realisieren, ist das Schlüsselwort synchronized in der Definition einer Methode. Jedoch ist Vorsicht geboten, dies kann bei langen Methoden den Vorteil der Nebenläufigkeit zunichte machen. In dem Fall Nutzung anderer Möglichkeiten -> Literatur J. Henke (HAW) Threads 10. Juni / 18
46 Das Schlüsselwort synchronized Eine einfache Methode Synchronisation in Java zu realisieren, ist das Schlüsselwort synchronized in der Definition einer Methode. Jedoch ist Vorsicht geboten, dies kann bei langen Methoden den Vorteil der Nebenläufigkeit zunichte machen. In dem Fall Nutzung anderer Möglichkeiten -> Literatur synchronized sorgt dafür, dass zu jeder Zeit maximal ein Thread mit der Abarbeit eines Codesegments beschäftigt ist. J. Henke (HAW) Threads 10. Juni / 18
47 Das Schlüsselwort synchronized Eine einfache Methode Synchronisation in Java zu realisieren, ist das Schlüsselwort synchronized in der Definition einer Methode. Jedoch ist Vorsicht geboten, dies kann bei langen Methoden den Vorteil der Nebenläufigkeit zunichte machen. Beispiel In dem Fall Nutzung anderer Möglichkeiten -> Literatur synchronized sorgt dafür, dass zu jeder Zeit maximal ein Thread mit der Abarbeit eines Codesegments beschäftigt ist. p u b l i c s y n c h r o n i z e d v o i d somemethod ( ) { // h i e r h ä l t s i c h maximal e i n Thread g l e i c h z e i t i g a u f } J. Henke (HAW) Threads 10. Juni / 18
48 Collections API und Threads Bis auf Vector sind alle Collections nicht threadsicher! J. Henke (HAW) Threads 10. Juni / 18
49 Collections API und Threads Bis auf Vector sind alle Collections nicht threadsicher! Die Utilityklasse Collections biete jedoch Methoden, um auf eine bestehende Collection eine Synchronisierte Sicht zu erhalten. Anschließend müssen alle Zugriffe über diese Sicht auf die Collection abgewickelt werden. J. Henke (HAW) Threads 10. Juni / 18
50 Collections API und Threads Beispiel Bis auf Vector sind alle Collections nicht threadsicher! Die Utilityklasse Collections biete jedoch Methoden, um auf eine bestehende Collection eine Synchronisierte Sicht zu erhalten. Anschließend müssen alle Zugriffe über diese Sicht auf die Collection abgewickelt werden. L i s t <S t r i n g > m y L i s t = C o l l e c t i o n s. s y n c h r o n i z e d L i s t ( new L i n k e d L i s t <S t r i n g >() ) ; J. Henke (HAW) Threads 10. Juni / 18
51 Ende Vielen Dank für die Aufmerksamkeit. Sind noch Fragen offen? J. Henke (HAW) Threads 10. Juni / 18
5. Threads, Serverprozesse und Benachrichtigungen
5. Threads, Serverprozesse und Benachrichtigungen Threads allgemein Threads in Android: Handler und Messages Services: Local, Remote, Binding Benachrichtigungen Entwicklung mobiler Anwendungen Europäische
MehrProzesse. Prozesse sind Programme. Prozesse können aus Unterprozessen bestehen. Prozesshierarchie Unterprozesse Threads
Threads Prozesse, Parallelität, Nebenläufigkeit, Threads, Erzeugung, Ausführung, Kommunikation, Interferenz, Kritischer Bereich, Deadlock, Synchronisation. Prozesse Prozesse sind Programme mehrere Prozesse
MehrThread-Konzept in objektorientierten Programmiersprachen. Threads. Threads in Java
Thread-Konzept in objektorientierten Programmiersprachen 1 Threads ein Thread ist ein eigenständiges Programmfragment, das parallel zu anderen Teilen eines Programmes ablaufen kann alle Threads eines Programmes
Mehr2.2 Prozesse in Java
2.2 Prozesse in Java! Java sieht kein Schlüsselwort für Prozesse vor, sondern bestimmte Klassen und Schnittstellen. Mit anderen Worten: der Prozessbegriff wird mit Mitteln der Objektorientierung eingeführt.
MehrBeispiel für überladene Methode
Beispiel für überladene Methode class Gras extends Futter {... abstract class Tier { public abstract void friss (Futter x); class Rind extends Tier { public void friss (Gras x) {... public void friss (Futter
MehrJava Real-Time Specification
Ausgewählte Kapitel eingebetteter Systeme Java Real-Time Specification Tobias Distler 05.07.2006 Java und Echtzeit? Problem Nichtdeterministisches Verhalten der Garbage Collection Weitere Nachteile Scheduling
MehrParallele Prozesse. Prozeß wartet
Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:
MehrLehr- und Forschungsgebiet Informatik 2. Proseminar-Arbeit. über das Thema Multithreading und Synchronisation in Java. Jens Bürger
Kapitel 1 Einleitung Lehr- und Forschungsgebiet Informatik 2 Proseminar-Arbeit über das Thema Multithreading und Synchronisation in Java Autoren: Betreuerin: Isabel Klöter Jens Bürger Jera Hensel Abgabedatum:
MehrSequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )
Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige
MehrÜbung: Verwendung von Java-Threads
Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum
MehrAusgewählte Implementierungsprobleme
Ausgewählte Implementierungsprobleme Rebecca Tiarks 18. Dezember 2008 1 / 30 Inhaltsverzeichnis 1 2 3 Persistenzproblem & CSV Binärformat 2 / 30 Themenübersicht 1 18. Dez: + 2 8. Jan. Swing 3 15. Jan TCP,
MehrÜbung zu Grundlagen der Betriebssysteme. 10. Übung 18.12.2012
Übung zu Grundlagen der Betriebssysteme 10. Übung 18.12.2012 Aufgabe 1 a) Was versteht man unter einem kritischen Abschnitt oder kritischen Gebiet (critical area)? b) Welche Aufgabe hat ein Semaphor? c)
MehrThreads In dieser Übung beschäftigen wir uns mit der Realisierung von Threads in Java.
Threads In dieser Übung beschäftigen wir uns mit der Realisierung von Threads in Java. Aufgabe 1: Erzeugen und Starten von Threads a) Sei BankKunde eine von einer Klasse Kunde abgeleitete Klasse. Erweitern
Mehr6. Tutorium zu Softwaretechnik I
6. Tutorium zu Softwaretechnik I Parallelität und Testen Michael Hoff 01.07.2014 INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrBetriebssysteme. Wintersemester 2015. Kapitel 2 Prozess und Threads. Patrick Kendzo ppkendzo@gmail.com
Betriebssysteme Wintersemester 2015 Kapitel 2 Prozess und Threads Patrick Kendzo ppkendzo@gmail.com Programm Inhalt Einleitung Prozesse und Threads Speicherverwaltung Eingabe und Ausgabe Dateisysteme Zusammenfassung
MehrSynchronisation in Java. Invisible Web
Synchronisation in Java Studienprojekt Invisible Web Tang Zhihong Synchronisation in Java Synchronisationsproblem Monitore Wait und notify PipedInputStream und PipedOutputStream Synchronisation von Collections
MehrInhaltsverzeichnis. Carsten Vogt. Nebenläufige Programmierung. Ein Arbeitsbuch mit UNIX/Linux und Java ISBN:
Inhaltsverzeichnis Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42755-6
Mehr12. Threads in Java. Sequentielle Abarbeitung (2) Beispiel: Thread (1) Sequentielle Abarbeitung (1)
12. Threads in Java Einführendes Beispiel 12. Threads in Java 12. Threads in Java Einführendes Beispiel Sequentielle Abarbeitung (2) Ein Thread ist eine Folge von Anweisungen, die unabhängig von anderen
MehrEinführung in die Programmierung Blockkurs Java
Michael Bader 8. 12. April 2002 Freitag Inhaltsübersicht Exceptions und Errors Ausnahmebehandlung: try/catch/finally Threads Zugriffskontrolle bei gemeinsamen Variablen: synchronized, wait(), notify()
MehrTEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4
Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...
MehrThread-Synchronisation in in Java. Threads Wechselseitiger Ausschluss Bedingte Synchronisation Beispiel: Warteschlangen
Thread-Synchronisation in in Java Threads Wechselseitiger Ausschluss Bedingte Synchronisation Beispiel: Warteschlangen Die Klasse Thread Die Die Klasse Thread gehört zur zur Standardbibliothek von von
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 09: Vererbung Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil Einführung in die Vererbung Motivation Das Schlüsselwort extends Einführendes
MehrZur Erinnerung: Threads. Threadverwaltung. Threads: Prioritäten. Beispiel Flugbuchungsprogramm. Nichtdeterminismus
Zur Erinnerung: Threads Programmierung (fortgeschrittene Konzepte) Threads, Monitore, Semaphore und speisende en Wolf-Ulrich Raffel (uli@wuraffel.de) Möglichkeiten, Threads zu definieren Bildung einer
MehrModel-View-Controller
Software Design Pattern Model-View-Controller Michael Lühr Gliederung Einführung und Problemstellung Ansatz durch MVC Detaillierte Darstellung der Komponenten Model View Controller Vor- und Nachteile Zusammenfassung
MehrNebenläufige Programmierung I
Nebenläufige Programmierung I Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS06 2 Ziele Grundlegende Begriffe der nebenläufigen Programmierung verstehen lernen Nebenläufige Programme
MehrAnwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie
Anwendungsentwicklung mit Java Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie Vererbung (1) 2 Problem: Objekte mit gleichen Attributen/Methoden, aber nicht völlig identisch, z.b., LKW, PKW,
MehrKlausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)
Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum
MehrPräsentation Interfaces
Einführung in Java Präsentation Interfaces Nozar Delassaei Marvi Inhalt 1. Erinnerung Klasse Objekte Beispiel Klasse Abstrakte Klasse Beispiel Abstrakte Klasse Mehrfachvererbung-1 Mehrfachvererbung-2 2.
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Cluster-Praktikum Sommersemester 2007 Transparent Replizierte Objekte in JavaParty Institut für Programmstrukturen und Datenorganisation
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren
MehrMonitore. Klicken bearbeiten
Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition
MehrZusammenfassung Modul 223
Zusammenfassung Modul 223 von Christian Roth Powered by Schuschu Bison Schweiz AG, Surentalstrasse 10, CH-6210 Sursee, www.bison-group.com Inhaltsverzeichnis 1 Entwurfmuster... 3 1.1 Singleton... 3 1.1.1
MehrSysteme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige
MehrDomänenmodell: Fadenkommunikation und -synchronisation
Domänenmodell: Fadenkommunikation und -synchronisation Alexander Humphreys, Reinhard Rösch, Fabian Scheler 15. Mai 2003 Inhaltsverzeichnis 1 Domänendefinition 1 2 Domänenlexikon 1 3 Konzeptmodelle 4 4
MehrParallele Programmierung in Java
PPJ-1 Parallele Programmierung in Java Prof. Dr. Uwe Kastens Sommersemester 2000 Vorlesung Parallele Programmierung in Java SS 2000 / Folie 01 PPJ-2 Ziele und Durchführung Die Studierenden sollen grundlegende
MehrMulti-Threading. Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de
Multi-Threading Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de Einführung in Threads Threads synchronisieren ThreadPools Thread = unabhängiger Ausführungspfad, der gleichzeitig
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrEinführung in AOP. Rico Schiekel - 012816 rschiekel@web.de. Agenda. Kernproblem der Objekt Orientierung
Einführung in AOP Informatikseminar Rico Schiekel - 012816 rschiekel@web.de Fachhochschule Ravensburg Weingarten Hochschule für Technik und Sozialwesen Einführung in AOP Agenda Kernproblem der Objekt Orientierung
MehrInformatik II Übung 6 Gruppe 7
Informatik II Übung 6 Gruppe 7 Leyna Sadamori leyna.sadamori@inf.ethz.ch DEBRIEFING Übung 5 2 U5A1-4 Im Prinzip alles richtig. Falls am Ende noch Zeit, dann Einsicht in die Best Of s 3 THEORIE Java Vererbung,
MehrJava Threads. Mutex, Race Condition, Deadlock, Starvation und Co.. Prof. Dr. Nikolaus Wulff
Java Threads Mutex, Race Condition, Deadlock, Starvation und Co.. Prof. Dr. Nikolaus Wulff Java Threads Threads sind leichtgewichtige Prozesse. Sie benötigen keine Betriebsystemressourcen wie ein echter
MehrGrundkonzepte java.util.list
Grundkonzepte java.util.list Eine List ist eine Spezialisierung einer allgemeinen Ansammlung (Collection): Lineare Ordnung ist definiert Zugriff über Rang oder Position Volle Kontrolle wo eingefügt bzw.
MehrLeJOS: Mindstorms in Java programmieren
LeJOS: Mindstorms in Java programmieren Alexander Koller Softwareprojekt "Sprechende Roboter" 30. April 2004 Überblick Warum Java? Was ist LeJOS? Motoren steuern Auf Sensoreingaben reagieren Wie geht's
MehrOperating System Kernels
Operating System Kernels von Patrick Bitterling 1 Themenübersicht -Eine Einleitung über Kernel -Begriffserklärung, Architekturen -Kernel Subsysteme -Prozess-Scheduling, Speichermanagement,... -Der Networking
MehrJava: Eine Übersicht. Dennis Giffhorn. Lehrstuhl für Programmierparadigmen Universität Karlsruhe
Java: Eine Übersicht Dennis Giffhorn Lehrstuhl für Programmierparadigmen Universität Karlsruhe Allgemeines Objektorientiert Syntaxfamilie von C/C++ Statisch getypt Entwickelt von Sun Microsystems class
MehrGrundzüge der Programmierung. Wiederverwendung VERERBUNG
Grundzüge der Programmierung Wiederverwendung VERERBUNG Inhalt dieser Einheit Syntax: Vererbung in Java Superklassen - Subklassen Konstruktorenaufruf in Subklassen super, abstract und final 2 Code-Reuse
MehrInhaltsverzeichnis. Rainer Oechsle. Parallele und verteilte Anwendungen in Java ISBN: Weitere Informationen oder Bestellungen unter
sverzeichnis Rainer Oechsle Parallele und verteilte Anwendungen in Java ISBN: 978-3-446-42459-3 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42459-3 sowie im Buchhandel.
MehrJava RMI Remote Method Invocation
Java RMI Remote Method Invocation Ziel: Aufruf von Instanzmethoden entfernter Objekte basierend auf Java. Paket: java.rmi und Unterpakete Topologie: RMI Registry RMI Server RMI Client Der Server registriert
MehrDie Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff
Die Java Stream API Funktionale Programmierung mit der Stream API des JDK 1.8 Prof. Dr. Nikolaus Wulff Funktionale Programmierung Neben der Collection API mit default Methoden ist als weitere Neuerung
MehrEnumerations und innere Klassen
Enumerations und innere Klassen Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 14: Generics Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda Generische Klassen (Generics) Motivation Java Typ-Prüfung Warum also Generics? Generische
MehrKapitel 4. Monitore und wechselseitiger Ausschluss
Seite 1 Kapitel 4 Monitore und wechselseitiger Ausschluss Prof. Dr. Rolf Hennicker 28.05.2015 4.1 Interferenzen Seite 2 Parallel ablaufende Prozesse können sich gegenseitig (störend) beeinflussen. Beispiel
MehrJava-Programmierung. Remote Method Invocation - RMI
Java-Programmierung Remote Method Invocation - RMI Entwicklungsmethoden Sockets Entwurf verteilter Anwendungen ist relativ aufwändig, da zunächst ein Kommunikationsprotokoll entwickelt werden muss aufwändig
MehrEinstieg in die Informatik mit Java
1 / 14 Einstieg in die Informatik mit Java Swing Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 14 1 Einführendes Beispiel 2 Eigenschaften von Swing 3 Typisches Swing-Applet
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Das Java-Speichermodell Prof. Dr. Walter F. Tichy Dr. Victor Pankratius Ali Jannesari Geschichte des Speichermodells Kapitel 17 der Java-Sprachdefinition
MehrInformatik B - Objektorientierte Programmierung in Java. Vorlesung 21: Threads 2. Inhalt
Universität Osnabrück 1 wait und notify 3 - Objektorientierte Programmierung in Java Vorlesung 21: Threads 2 SS 2006 Prof. Dr. F.M. Thiesing, FH Osnabrück Neben dem Monitorkonzept stehen mit den Methoden
MehrParallele und verteilte Anwendungen in Java
Rainer Oechsle Parallele und verteilte Anwendungen in Java ISBN-10: 3-446-40714-6 ISBN-13: 978-3-446-40714-5 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40714-5
MehrTechniken der Projektentwicklung
Themen Threading Netzwerk Techniken der Projektentwicklung Threading & Netzwerkprogrammierung Ingo Lütkebohle Termin 13 Ingo Lütkebohle Techniken der Projektentwicklung 1 Themen heute Themen Threading
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrVIII: Vererbung. Unterklassen einer Klasse. Vererbung von Methoden und Instanzvariablen. Überschreiben von Methoden
VIII: Vererbung Unterklassen einer Klasse Vererbung von Methoden und Instanzvariablen Überschreiben von Methoden Vererbung als Realisierung einer is-a Beziehung. Informatik I VIII: Vererbung 259 Beispiel:
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrEinführung in die Programmierung
Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität
MehrKapitel 5. Monitore und Synchronisationsbedingungen
Seite Kapitel 5 Monitore und Synchronisationsbedingungen Prof. Dr. Rolf Hennicker 5.6.24 5. Synchronisationsbedingungen Seite 2 Bisherige Verwendung von Monitoren: Verkapselung von Daten, Zugriffoperationen
MehrArchitekturbeschreibung Koala Editor
Architekturbeschreibung Koala Editor Package: de.hsos.koala Enthält die Main Klasse. Klasse: Main Wird beim Start des Programms ausgeführt und öffnet ein neues Editor-Fenster. Package: de.hsos.koala.actions
MehrWhite Paper. Embedded Treiberframework. Einführung
Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded
MehrEffiziente Java Programmierung
Effiziente Java Programmierung Seminar Implementierung moderner virtueller Maschinen am Beispiel von Java SS 2009 von Reinhard Klaus Losse 20. Mai 2009 Gliederung Definition Effizienz Werkzeuge zum Messen
MehrDer Scheduler von Windows Konzepte und Strategien
Gliederung Der Scheduler von Windows Konzepte und Strategien Daniel Lohmann 1 Grundbegriffe 2 Eigenschaften des Schedulers Grundlegende Eigenschaften Prioritätenmodell Dynamische Prioritätenanpassungen
MehrÜbung Betriebssysteme 11
Übung Betriebssysteme 11 Christian Motika Christian-Albrechts-Universität zu Kiel Institut für Informatik AG Echtzeitsysteme / Eingebettete Systeme Kiel, Germany 29-JAN-2013 CAU - WS 2012/13 Übung Betriebssysteme
MehrParallele und verteilte Anwendungen in Java
Parallele und verteilte Anwendungen in Java Bearbeitet von Rainer Oechsle 3., erweiterte Auflage 2011. Buch. 416 S. Hardcover ISBN 978 3 446 42459 3 Format (B x L): 20,3 x 24,5 cm Gewicht: 1068 g Weitere
MehrNebenläufigkeit. Motivation und Parallelität. Definitionen und Übersicht. Continuations und Koroutinen. Threads in Java.
Nebenläufigkeit Motivation und Parallelität Definitionen und Übersicht Continuations und Koroutinen Threads in Java Erste Beispiele Motivation für Nebenläufigkeit Nebenläufigkeit = mehrere Kontrollflüsse
MehrJava Einführung Methoden in Klassen
Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding
Mehr7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure
7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG
MehrÜbung 1 mit C# 6.0 MATTHIAS RONCORONI
Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,
MehrKapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik
Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen
MehrEINI WiMa/LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12
EINI WiMa/LW Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrVerteilte Systeme CS5001
Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,
MehrInhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53
Vorwort......................................................... 13 1 Vorbereitungen.................................................. 17 1.1 JDK-Installation unter Windows................................
MehrJava Wireless Toolkit (JWT) Bei der Programmierung von Anwendungsprogrammen für mobile Endgeräte eignet sich die Verwendung des Java Wireless Toolkit.
1 Seminar zum Programmierprojekt Arbeitsbereich Technische Informatik Ausgabe: 30. April 2008 Anleitung B3 Einführung in die Entwicklungsumgebungen Allgemeines In dieser Aufgabe lernen wir die Entwicklungsumgebungen
MehrSven Osterwald Concurrent Objects. Proseminar Parallele Programmierung in Java
Sven Osterwald 12.05.2010 Concurrent Objects Proseminar Parallele Programmierung in Java Überblick 1. Einführung 2. Beispiel FIFO-Queue mit und ohne Lock 3. Korrektheit bei sequentiellen Objekten 4. Korrektheit
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrCOPPER Best Practices
COPPER Best Practices Version 1.0.1 Wann sollte man überhaupt COPPER verwenden? Allgemein genau dann, wenn man von der COPPER Notation oder den COPPER-Features profitieren kann. Ein wesentliches Feature
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 10
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Übungsblatt Nr. 10 Aufgabe 20: Code Verständnis Löse diese Aufgabe selbständig als Vorbereitung zur Übung auf dem Papier. a) Gib
MehrVererbung. Vererbung von Methoden und Instanzvariablen. Vererbung als Realisierung einer is-a Beziehung.
Vererbung Unterklassen einer Klasse Vererbung von Methoden und Instanzvariablen Überschreiben von Methoden Vererbung als Realisierung einer is-a Beziehung. Informatik II: Objektorientierte SW-Entwicklung,
MehrSeminararbeit. Java Thread Synchronisation
Seminararbeit Java Thread Synchronisation Angelika Brückl (0055060) Java Thread Synchronisation 1 Inhaltsverzeichnis 1. Einleitung... 3 2. Allgemeines über Threading... 3 2.1. Was ist ein Thread?... 3
MehrEine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.
Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,
MehrNebenläufigkeit in Java
Nebenläufigkeit in Java Maurice Schoenmakers schoenma@informatik.tu muenchen.de Inhaltsverzeichnis 1 Einleitung... 2 2 Prozesse und Threads in Java... 2 2.1 Die Klasse Thread... 3 2.2 Der aktuelle Thread...
MehrVariablen manipulieren per JDI
Variablen manipulieren per JDI Zusammenfassung Jede moderne Java IDE verfügt über eine mächtige und dennoch meist einfach zu bedienende Benutzeroberfläche die das finden von Fehlern in lokalen oder entfernt
MehrARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH
ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung
MehrJavakurs 2013 Objektorientierung
Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
MehrVgl. Oestereich Kap 2.7 Seiten 134-147
Vgl. Oestereich Kap 2.7 Seiten 134-147 1 Sequenzdiagramme beschreiben die Kommunikation/Interaktion zwischen den Objekten (bzw. verschiedenen Rollen) eines Szenarios. Es wird beschrieben, welche Objekte
Mehr9. Vorlesung Betriebssysteme
Dr. Christian Baun 9. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/39 9. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr. Christian
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen
MehrAsynchrone Webservices mit Axis 1.x in Java
Asynchrone Webservices mit Axis 1.x in Java 1. Übersicht Architektur Da Webservices nach relativ kurzen Timeouts Anfragen abgearbeitet haben müsse, sind komplexe Anfragen wie sie in der Bioinformatik üblich
MehrKomponentenorientierte Software-Entwicklung. Seite 1 / 42
Seite 1 / 42 Wiederholung Messaging Java Messaging Service (JMS) Pub/Sub P2P Messaging Middleware XMPP-Protokoll Java API for XML-Processing (JAXP) Java API for XML-Binding Webservices / SOA Simple Object
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrRTEMS- Echtzeitbetriebssystem
RTEMS- Echtzeitbetriebssystem Name: Hussein Hammoud Matrikel- Nr.: 230768 Studiengang: Technische Informatik Fach: Projekt Eingebettete Kommunikation Technische Universität Berlin Sommersemester 2006 RTEMS-
MehrProf. W. Henrich Seite 1
Klasse - ist ein benutzerdefinierter Datentyp (Referenztyp) - hat Datenelemente - hat Methoden - Konstruktor ist spezielle Methode zum Erstellen eines Objektes vom Typ der Klasse (Instanz) - jede Klasse
Mehr2. Hintergrundverarbeitung in Android: Services und Notifications
2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services
MehrNebenläufige Anwendungen in Java (J2SE, Rich Client, J2EE)
CNAM Wintersemester 2014 / 2015 Nebenläufige Anwendungen in Java (J2SE, Rich Client, J2EE) Im Rahmen von: Betriebssysteme und nebenläufige Anwendungen Agenda Nebenläufigkeit in Java Anwendungen Basisfunktionen
MehrSchedulingund Thread-Ausführer
Schedulingund Thread-Ausführer Scheduling Ein Scheduler arbeitet Programmstücke nach einer festen Zeitspanne oder zu einer fixen Zeitpunkt wiederholt oder einmal ab. Notwendigkeiten für Scheduling sind
Mehr