Van egy tcp szerverem s kliensem. Hogyan tudnám megoldani, hogy a kliens ha kap uzenetet irassa ki viszont ha nem akkor a kliens küldjön üzenetet?















Na szóval akkor hálózati alapismeretek következnek.
Először is, a kommunikációnak három fő fajtája van:
- szimplex (egyirányú) kapcsolat: a kommunikáció során az adat csak egy irányba halad a kapcsolat megszűnéséig. Ez azt jelenti, hogyha A és B kapcsolatban állnak, akkor végig csak A pofázik, B pedig figyeli, hogy A mit mond. Hallgattál már rádiót? Na, ott pont ez a helyzet. A rádiós pofázik neked, te pedig nem nagyon tudsz pofázni a rádiósnak.
- half duplex kapcsolat: a két fél egyaránt küldhet és fogadhat adatot, de nem egyszerre. Tehát amíg A pofázik, addig B hallgat, de amíg B pofázik, A hallgat. Egy tisztességes beszélgetés során pontosan ez történik, nem illik belevágni a másik ember szavába. Ha beszélgettetek már walkie-talkie-n, na, az pont ez.
- full duplex kapcsolat: egyszerre pofázhat és hallgathat mindkét fél.
A kérdés kritikus pontja a read(). Ez ugyanis blokkolja a programod szálát, amíg nincs adat a pufferben. Szóval nem azt kellene csinálni, hogy a read()-del várok addig, amíg nincs adat, hanem figyelem azt, hogy a pufferben van-e beolvasható adat, és ha nincs, akkor tudok küldeni.





3: Amit írtál, annak semmi köze ahhoz, amit a kérdező tudni akar.
'Hálózati alapismeretek' címén elkezdesz büfögni fél duplexről, meg hasonlókról?
A kérdezőnek: Azt kell biztosítanod, hogy a kapcsolat ne záruljon le. Ezt elérheted azzal, hogy rendszeresen küldesz/fogadsz egy-egy byte-ot. Ha pedig az kell, amit szeretnél, akkor küldesz pl. egy olyan karaktert, vagy karakterláncot, amit a szerver értelmez és kész.










"Ki mondta, hogy lezárul a kapcsolat?"
Én mondom, hogy lezárulHAT. Mivel nem tudom milyen protkót használ, de adott esetben egy idő után az oprendszer magától lezárja a socketet. ha nincs rajta forgalom.
Ezért szoktak pl. ftp-n 'keep alive' csomagokat küldeni.





pen-dragon amit irsz az nem hulyeseg (kivetelesen), viszont a kerdeshez nem sok koze van annak, hogy lezart-e a kapcsolat vagy sem.
A kerdezonel ott a gond, hogy egyszerre nem tud listenelni es reagalni + kuldeni. Mivel (ahogy mar emlitettek) szinte biztos, hogy 1 szalon probalja megoldani a dolgot.





"pen-dragon amit irsz az nem hulyeseg (kivetelesen),"
Kétlem, hogy az itt megfordulók zöme képes volna megitélni a válaszaimat. Te is ezek közé tartozol, igazolván ezt az előbbi hozzászólásoddal, például.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!