-
Fototrend

Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
emitter
#1323
üzenetére
azt mondtad h szedjem ki a temp_failure-t, hát kiszedtem, de így meg a select ha jól látom, nem is hívódik meg sehol
Persze, mert azt is kiszedted
Talán azt hagyd benne, a return-nel egyetemben.
return select (FD_SETSIZE, &set, NULL, NULL, &timeout));
Már most nem tudom hogyan magyarázzam, ha az elõzõt nem értetted.
Na még egy próba.
Nézzük onnan, hogy mit szeretnél:
1. Ha a felhasználó megnyom egy gombot, akkor arra reagálni akarsz.
2. Másodpercenként kiírni az idõt.
3. Közben nem terhelni a processzort.
A 3. pont miatt meg kell mondani az operációs rendszernek, hogy az 1. és 2. események bekövetkeztekor fusson a progi. Ezt például a select függvénnyel lehet, ami azt tudja, hogy figyel tetszõleges számú fájlleírót megadott ideig. Billentyûleütés akkor van, ha a stdin fájlból van mit olvasni. Ezt szépen meg lehet adni a select-nek. Sajnos azt viszont nem tudja, hogy másodpercenként térjen vissza akkor is ha nincs billentyûleütés, csak várakozási idõt lehet neki megadni. Ezért a 2. pontot kicsit át kell fogalmazni, mégpedig úgy, hogy nem azt mondod, hogy másodpercenként, hanem azt, hogy a következõ másodpercig. Ezt pedig úgy csinálod, hogy minden frissítésnél illetve a select meghívása elõtt lekéred az idõt (a gettimeofday függvénnyel, mert kell a pontosság!) és a timeout értéket ebbõl számolod, értelemszerûen: timeout = elõzõ frissítés + 1mp - aktuális idõ.
A select visszatérési értéke elárulja, hogy az 1. vagy a 2. feltétel következett-e be, vagyis a felhasználó megnyomott egy gombot (ekkor getch() és eseménykezelés) vagy pedig a várakozási idõ járt le (ekkor idõ frissítése kell.).
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Windows 11
- Fejhallgató erősítő és DAC topik
- Mikrotik routerek
- Melyik tápegységet vegyem?
- Parkside szerszám kibeszélő
- Samsung LCD és LED TV-k
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Fotók, videók mobillal
- Android szakmai topik
- További aktív témák...
- SteelSeries Arctis Nova PRO PC-Xbox headset + GameDAC GEN 2 + fülpárnák
- HifiMan Arya Organic gyári fejhallgatókábel (6,3mm jack - 2x3,5mm jack) 1,5m
- iPad Pro 11 (M5) Wifi + Cellular 256GB (Bontatlan) 1 éb garancia
- Eladó Asus ROG Nuc15 (2025) - Ultra 9 275HX, RTX 5070 Ti Laptop, 32GB/1TB, hibátlan, magyar garis
- Dobozos // iMac // 8GB/256GB // M3 chip // egérrel és billentyűzettel
- DELL Optiplex 3060 SFF - i5-8500 / 8GB / 256GB SSD / DVD / Win11
- Sosemhasznált! HP OmniBook 5 i3-1315U 8GB 1TB 16" FHD+ Gar.: 1 év
- BESZÁMÍTÁS! Gigabyte Vision OC RTX 3080 10GB videokártya garanciával hibátlan működéssel
- RugKing 4 Pro
- Telefon felvásárlás!! Samsung Galaxy A22/Samsung Galaxy A23/Samsung Galaxy A25/Samsung Galaxy A05s
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest

Talán azt hagyd benne, a return-nel egyetemben.
