/** A Párhuzamosság fejezet példaprogramjai.
A 70-es évek felismerése, hogy a feladat komplexitásának leküzdésére új absztrakciós eszközöket kell bevezetni. Ez idő tájt három fő irányzat határozta meg a programozási nyelvek fejlesztésének vonulatát: az absztrakt adattípus kifejlesztése, kivételkezelés és a párhuzamos feldolgozás. Ez utóbbi azért is fontos, mert a valós idejű alkalmazások jelentős részét képzik az operációs rendszerek, a folyamatszabályzó, a helyfoglalási rendszerek, stb. fejlesztése. Azon nyelvek, melyek ilyen jellegű fejlesztéseket akarnak támogatni, a programozó számára lehetővé kell, hogy tegyék a párhuzamosan végrehajtható programok definiálását. A nyelv tervezői számára az egyik legfontosabb szempont, hogy olyan eszközöket biztosítsanak, amivel az eljárások szinkronizálhatók. 1966 és 71 között dolgozták ki a szemafor, a monitor fogalmát és a szinkron üzenetátadás eszközeit a folyamatok szinkronizálására.
Tartalomjegyzék a hivatkozott referenciákkal és felhasznált képekkel:
Párhuzamosság a számítástechnikában
Folyamatok, szálak
  • Képek:
    • Alapfogalmak a folyamatokban
    • Szálak
Párhuzamosság és erőforrás-használat
Mikor alkalmazzunk szálakat?
Szálak használata
Hogyan készítsünk szálakat?
  • Referenciák:
    • Az {@link elte.java2_utikalauz5.thread.ExtendedThread} példaprogram
    • A {@link elte.java2_utikalauz5.thread.Logo} példaapplet
Hatékony szálindítás
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.Downloader} példaprogram
Ütemezett szálindítás
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.TimeWriter} példaprogram
    • A {@link elte.java2_utikalauz5.thread.Ticker} példaprogram
Szálcsoportok
Számláló, listázó metódusok
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.SzalCsoport1} példaprogram
Csoportot kezelő metódusok
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.SzalCsoport2} példaprogram
A csoport szálaival foglalkozó metódusok
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.SzalCsoport3} példaprogram
Démon szálak
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.DaemonThread} példaprogram
Prioritások
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.Priority} példaprogram
Önző és udvarias szálak
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.TimeSlice} példaprogram
Lokális szálváltozók
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.ThreadLocalTeszt} példaprogram
Szinkronizáció
Monitoros szinkronizáció
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.SimpleCount2} példaprogram
    • Az {@link elte.java2_utikalauz5.thread.RWTeszt} példaprogram
Szinkronizáció üzenetekkel
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.WaitNotify} példaprogram
Szálak összekapcsolása
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.JoinTeszt} példaprogram
    • A {@link elte.java2_utikalauz5.thread.Slides} példaprogram
Zárolás
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.ReentrantLockTeszt} példaprogram
    • A {@link elte.java2_utikalauz5.thread.ReentrantReadWriteLockTeszt} példaprogram
További eszközök
Védett változók
{@code volatile} változók
Atomi típusok
  • Referenciák:
    • Az {@link elte.java2_utikalauz5.thread.AtomicMeasure} példaprogram
Szinkronizált adattárolók
Konkurens adattárolók
Futásvezérlés
Felfüggesztés
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.SuspendResume1} példaprogram
    • A {@link elte.java2_utikalauz5.thread.SuspendResume2} példaprogram
Megszakítás
  • Referenciák:
    • Az {@link elte.java2_utikalauz5.thread.Interrupt} példaprogram
Leállítás
  • Referenciák:
    • A {@link elte.java2_utikalauz5.thread.StopThread1} példaprogram
    • A {@link elte.java2_utikalauz5.thread.StopThread2} példaprogram
Szálak állapotai
Futtatható és futó állapot
Blokkolt állapot
Várakozó állapot
Terminált állapot
Visszatekintés
@link.forrásfájl {@docRoot}/../data/thread/src package-info.java @author Dezső Balázs @author Frohner Ákos @author Selmeci Attila */ package elte.java2_utikalauz5.thread;