F7 (Callback, PropertyChangeListener) Flashcards
Vad är en process?
ett program som utförs
Vad består processorer av?
olika kärnor, vardera kärnor kan bara jobba med en sak/en lösning
Vilka olika tillstånd kan en tråd befinna sig i?
- New - skapad men inte anropad
- Runnable - start( ) har anropat och tråden kan vara aktiv
- Running - tråden utför sin uppgift
- Blocked, Waiting, Time_waiting - metoderna wait( ) eller Thread.sleep( ) har anropats, tråden är väntande
- Terminated - trådens run-metod har exekverat klart
Vad innebär “Polling”?
att man vid upprepade tillfällen under en viss tid kollar om en villkor är uppfyllt
När används Polling?
t ex för att kolla om ett zip-arkiv är färdigt?
Vad är busy waiting?
en sorts Polling, inte önskvärt (ej effektivt)
Vad är Observer?
ett designmönster
Vad innebär “Observer”?
att det finns en observer, dvs klassen som skulle informeras och en annan klass som är den som ska observeras
Används Observer?
Nej, det är deprecated sedan Java 9
Vad är Callback?
Ett designmönster
- en funktion som exekveras efter en händelse
- informerar andra klasser och objekt om händelsen
Vilken sorts uppgifter är Callback lämpliga för?
Asynkrona uppgifter
Hur implementerar man Callback?
- Definiera metoden som ska anropas efter händelsen, görs i ett interface
- Definiera en/flera klasser som implementerar klasser
- Registrera klassen sm implementerar interface i klassen som utför callback
- Använd referensen för att anropa callback-metoden
Vilka klasser ska implemetera callback-interfacet?
klasserna som ska informeras
Vad ska man vara försiktigt med kring callback?
att anropet av en callback-metod inte blockerar utförande av annan kod (synkron callback)