Tråde & Executors – uge 2.

Slides:



Advertisements
Lignende præsentationer
Mini-PC-kørekort – Modul 6
Advertisements

REGISTRERINGSDATABASEN
Backoffice præsentation
Hvordan bruger jeg First Class konferencerne ?
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
NetBeans Installation og brug.
Backoffice præsentation
Introduktion til Access (Access, del 1)
FEN IntroJava AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans.
To måder at overføre objekt- referencer mellem processer (1) Via naming service - interface RMISolver (2) Som parametre til fjernprocedurekald - interface.
1. Database-systemer, introduktion
Introduktion til Access (Access, del 1). RHS – Informationsteknologi – Fra design til udvikling Vi ved nu, hvordan vi finder et design for en database,
Terminsprøver december  Kom i god tid. Helst 15 min. Før prøven begynder  Find din plads. Dit navn og prøvenr. Står på bordet.  Du skal selv.
Deadlock Definition deadlock (baglås) er en tilstand som en mængde af processer kan være i en mængde processer er i deadlock hvis alle processerne står.
IT i Byggeriet Semester kursusgang Projektweb og html (fortsat) Kjeld Svidt Kjeld Svidt  Institut for Bygningsteknik  Aalborg.
DAIMIIntroducerende objektorienteret programmering4A.1 Kontrakter og Design Kontraktbaseret design, JavaDoc dokumentation.
DAIMIIntroducerende objektorienteret programmering4A.1 Kontrakter og Design Kontraktbaseret design, JavaDoc dokumentation,
DAIMIIntroducerende objektorienteret programmering15A.1 Eksamen…
GoMINIsite – og få en ny og bedre hjemmeside på minutter 0.
Programmering I Java/C# Datatekniker Dit første projekt.
Network Marketing Systemet Når vi følger systemet er resultatet forudsigeligt, Derfor er det vigtigt, at vi komitter os til at være vedholdende overfor.
KNÆK KODEN Opgave 4 Det erhvervsøkonomiske område.
Bestilling af dukaPC 1.Gå til 2. Tryk på ”Forhandler login” nederst på siden.
Sonic Pi Materialet er en oversættelse og tilpasning ud fra den engelske gratis open source ressource ved samme navn
Hvordan laver jeg en pude efter mit hoved? Følg denne enkle vejledning, så er du godt på vej.
Patientundervisning 3. Session Unipolar depression Håndtering af nedsat lyst, energi og træthed.
Skriftlighed Det fælles gods - præsentation af progressionsplan.
UU Aarhus og Samsø – læs mere på Dagens program Du skal have kendskab til Introkurser.
Microsoft Access databaser.
Lektion 7 Formål med denne lektion er at arbejde videre med klassekulturen, følge op på surveyen og at afrunde lektionsforløbet i Netwerk. Alle rettigheder.
Windows PowerShell Ikke kun for windows.
Dagens program Vi skal tale om: Hvornår og hvordan du træffer valg?
Don’t be afraid of the advanced editor
Lektion 6 Formålet med denne lektion er at introducere eleverne til de fællesskabende aktiviteter, der i høj grad støtter op om skabelsen af et stærkt.
Anvendelse.
”Avanceret” Programmering
Tre lags arkitektur hardware i systemer
Absolut adressering Hvis en formel skal kopieres må den forsynes med dollartegn for at holde sit indhold: H8*$B$5 5/20/2018 Martin Hejgaard Excel.
1.09 Dokumentation.
Velkommen Robusthed basiskursus
PORTFOLIO i skriftlig biologi
Distribuerte Objekter
Oprettelse Af Dreamviewer Site.
Hvad betyder den enkelte betegnelse Lønarter,
Dokumentation.
Historien om Ib Madsen er skrevet af: Mette Eike Neerlin
”Hvordan man kan få glæde af i engelskundervisningen”
ErhvervsAkademi Sjælland
Jan Christiansen Inspiration systime.dk
Programmeringsprocessen
Dokumentation.
Programmering.
Kode til Event på Kontrol
Lektion 7 Formål med denne lektion er at arbejde videre med klassekulturen, følge op på surveyen og at afrunde lektionsforløbet i Netwerk. Alle rettigheder.
Lektion 6 Formålet med denne lektion er at introducere eleverne til de fællesskabende aktiviteter, der i høj grad støtter op om skabelsen af et stærkt.
Systemtech A/S IT-leverandør til uddannelsessektoren
<SWC (+ lidt SWD)>
Mini-PC-kørekort – Modul 6
Præsentation af mad vafler
ErhvervsAkademi Sjælland
Introduktion til arbejdet som klubsekretær
CMS – Inner Wheel Danmarks hjemmesider
Skrivedag 3: Fra skriftlig opgave til mundtligt oplæg
Tråde & Executors – uge 2.
Quiz Uge 2 – mandag.
2F – EFTERÅR 2017.
ErhvervsAkademi Sjælland
Præsentationens transcript:

Tråde & Executors – uge 2

Dagsorden Opsamling fra sidste uge Tråde i Java Pauser Hvordan laver Java flere ting samtidigt Synkronisering af resource forbrug Executor frameworket

Opsamling Et par små tricks til få RES over i en fil - eller den anden vej. Både Add & Mul To forskellige PATH (picoserver06A) Vha en ekstra parameter (picoserver06B)

Alt om tråde på en slide En computer kan køre mere end et program ad gangen Java maskinen (JVM) kan køre mere end en “ting” ad gangen Disse “ting” kaldes tråde (threads). Der er mange forskellige måder at starte tråde på Vi skal se på 3 i dag, og arbejde med en i øvelserne Der er forskellige problemer med samtidighed Vi skal se på en af dem her på 2. semester

Tråde - samtidighed I – de studerende – er “tråde” i disse øvelser. Øvelse 1: Vi har et google sheet på denne side: https://goo.gl/ZaktJi

Øvelse 1 Ud for dit navn skal du skive: ”I am here and I am proud of it”

Øvelse 2 – brug C-kolonnen Find det første fornavn under dit eget som starter med det bogstav dit fornavn slutter på. Hvis der ikke er et nedenfor kikker du fra oven Hvis det ikke er der vælger du bare dit eget Ud for det navn skal du skrive et tal som er antallet af bogstaver i dit eget navn. Hvis der står et tal i forvejen lægger du dit antal til.

Øvelse 3 Der står 17 i celle E1

Læg 23 til det tal der står i celle E1

Pause

Tråde EksempelKode Threads01 EksempelKode Threads02

Runable Interfacet Runnable har været med siden 1995 (JDK1.0). Der er en metode der skal implementeres. Runnable indfanger En opgave/task der skal udføres

Parametre til Runnable Se kode eksempel Threads03 Kasper tegner på tavlen for at pointere ideen om at Task oprettes i en tråd (main tråden) Task udføres af arbejdstrådene (t1, t2, t3) Det er denne arbejdsdeling der minder lidt om tjeneren der laver bestillinger (tjeneren er main), og kokkene der laver maden (t1, t2, t3)

sleep metoden Sleep metoden er helt ligegyldig – og er brugt meget. Sleep metoden stopper tråden i et antal millisekunder. Sleep metoden bruges i eksempel kode til at illustrere at ”her gør tråden noget der tager tid, som vi ikke orker at kode lige her”. Henter data fra en database Henter data fra nettet Laver en kompliceret beregning Afspiller musik osv.

Syncronized metoder Forskellen mellem eksempel: ThreadsSyncUnsafe ThreadsSyncSafe Hvad ”synkroniseres der på”? En lås for hele JVM? En lås per tråd? En lås per ”hvad”?

Opgave Skriv ThreadsSyncSafe koden om så der IKKE benyttes en anonym indre klasse, men en almindelig klasse der enten implementerer Runnable er en subklasse af Thread

Pause

Executor Systematisering af restaurant arbejdsgangen Der er nogle der tager imod ordre Der er nogle der laver maden Der er nogle der serverer Der er nogle der tager imod penge

Eksempel koden til øvelserne Executor01 Executor03 Hvor kan I forestille jer dette ”design mønster” blive brugt?