15. diel - POSIX a Windows Threading library v C ++
V minulej lekcii, Knižnica štandardu C , sme sa pozreli na inú knižnicu pre C a C ++,
ktorá dovoľuje pracovať s vláknami. Konkrétne na knižnicu
threads
zo štandardu C.
V dnešnej lekcii sa pozrieme na ďalšiu knižnice pre prácu s vláknami, s ktorými sa môžeme stretnúť. Jedná sa o natívny knižnice pre UNIX-like systémy (POSIX thread) a pre Windows (Windows threading).
Knižnica
threads
zo štandardu C z veľkej časti kopíruje práve
rozhrania POSIX vlákien. Z hľadiska programátora používajúceho tieto
knižnice sa vlastne jedná len o premenovanie štruktúr a funkcií (prípadne
pridanie voliteľných parametrov). Z tohto dôvodu preberieme knižnice iba
stručne (nemá zmysel kopírovať text z predchádzajúcej lekcie) a
poukážeme si primárne na zmeny oproti C štandardu.
POSIX thread
POSIX thread je knižnica pre UNIX systémy, definovaná v hlavičkovom
súbore pthread.h
. Dokumentácia k nej je k dispozícii na
stránkach opengroup,
poprípade ako manual
page.
Vlákna
Knižnica obsahuje funkcie pre prácu s vláknami ako:
pthread_create()
,pthread_yield()
apthread_join()
.
Pozor, nemá funkciu pthread_sleep()
, ale
nanosleep()
, ktorá funguje rovnako ako thrd_sleep()
v
C11.
Na rozdiel od C11 má spustené funkcie (tj. Funkcie odovzdaná ako parameter pri vytváraní vlákna) inú definíciu a
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Obmedzená ponuka: Nauč sa všetko a ušetri
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V C ++ tutoriálu si predstavíme natívne knižnice POSIX threads slúžiace pre UNIX-like systémy a Windows Threading pre Windows.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.