Kezdőoldal » Számítástechnika » Programozás » Mi a multithreading értelme 1...

Mi a multithreading értelme 1 processzor esetén?

Figyelt kérdés
.. ha multithreading nélkül is meg lehet csinálni a feladatot?
2011. jún. 23. 13:53
 1/5 bix ***** válasza:
a sebesség?
2011. jún. 23. 14:08
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:
feladat megoldásnál gondolom az a lényeg, hogy felmérjék, meg tudod e csinálni. De a feladat ismeretében lehet, hogy konkrétabb választ is kaphatnál.
2011. jún. 23. 14:35
Hasznos számodra ez a válasz?
 3/5 Mugen ***** válasza:
A szál az amikor egy folyamatot több részfolyamatra azaz szálra bontunk. Például akkor van értelme, ha van egy bonyolult és hosszú számolást igénylő folyamatod, ami blokkolja az egész alkalmazást. Ilyenkor szokták külön szálba tenni a másik feladatot, nem blokkolva a grafikus rajzolást. (gondolj arra hogy megvan az világegyenletet megoldó képleted, ami legalább 1 percig tart, de attól még szeretnél írogatni ugyanabban az ablakban, vagy ha odébb húzod az ablakot akkor szeretnéd ha újrarajzolódna, miközben persze közben a bonyolult számolást is végzi egy időben a processzor)
2011. jún. 23. 16:29
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:
Mugen jól leírta, de "ha multithreading nélkül is meg lehet csinálni a feladatot", ahogy a kérdező írta, akkor ez az eset nyílván nem áll fent. Tehát ha nem zavar a user interakcióban, akkor semmi értelme, nincs neki haszna, sőt, inkább lassít és hibákat hoz be. Viszont megtanulhatsz párhuzamosan programozni, és ez előny, mivel egyre több mag van a gépekben :)
2011. jún. 24. 07:35
Hasznos számodra ez a válasz?
 5/5 anonim válasza:

Több apróságot nem írtál le.


Ha ez vizsga (zárthelyi, dolgozat, házi feladat) tétel, akkor azért, mert fel akarják mérni a tudásodat.


Ha nem:

A threadeknek és a processzorok számának tulajdonképpen nem sok köze van egymáshoz, persze ha van sok procid (akár többmagos) akkor az oprendszer valóban tud igaziból párhuzamosan futtatni szálakat, ami kellemes, de az egész szálkezeléses dolog nem függ ettől.


A lényeg, hogy egy programon belül az egymástól független feladatokat külön szálakban tudod futtatni.


Például az a feladatod, hogy RS232 vonalon egy műszerből adatokat gyűjtesz, azokat feldolgozod és ha kész a feldolgozás is, akkor kirajzolod. Az adatgyűjtés az egy számítógép sebességéhez mérten borzalmas lassú és kompletten fel is tarthatja a programodat, még egy egérkattintást sem tudsz csinálni. Ezt az adatgyűjtési folyamatot kirakod egy szálba. Ha megérkezett minden adat, akkor az adatértékelő szál is elindul és feldolgozza. Mindeközben a grafikus rendszeredben csinálhatsz mást, nézhetsz régebbi adatokat, nyomtathatsz, satöbbi, hiszen egy párhuzamosan futó szálban történnek azok a folyamatok amik amúgy feltartanák a programodat. Feltartani azért nem fogják, mert az operációs rendszer időzítője váltogat (igen gyorsan) a szálak közt, ezért te folyamatos gépműködést érzel. Nos a fenti példában végül a grafikus rendszer (a harmadik szál) átveszi a megmért és feldolgozott adataidat és kirajzolja.


Mindez nem igényel több processzort, a szálkezelés itt nem a valódi párhuzamos futtatás miatt érdekes hanem azért, mert a program lassú, aszinkron részei nem blokkolják, nem bénítják le a program többi részének a működését amikor várnak valamire.


Szóval ilyesmire való a szálkezelés.

2011. júl. 6. 01:32
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!