dival jsem se i na starsi clanky a nejak tam nemuzu najit to C++, vzdyt je to cele v C?
se sokety v C je to ok, ale tesil jsem se na popis nejake datove abstrakce a la Java nebo tak nejak.
zatim pouzivam libcommonc++, ale nejsem s ni az tak uplne spokojen (vlakna) a abych si napsal neco vlastniho, na to nemam :-(
muzete mi doporucit nejakou knihovnu, ktera je VELMI podobna abstrakci Javy?
Celé soketové API je možné používat v čistém C. Já ale kromě proudů a operátorů << >> také používám jednořádkové komentáře, typ bool, šablonu String a v příkladech ke stažení také někdy šablony z STL.
Protože jsou připomínky na téma C++ časté, budou se články dále jmenovat "Sokety a C/C++".
Za normalnych okolnosti ked ste jednoduchy TCP server z clanku "TCP server pod Linux" skusili spustit dvakrat za sebou, pri druhom pokuse oznamil "Chyba pri pomenovani soketu". Ale po urcitom case bolo opat vsetko v poriadku a server sa spustil bez problemov. Z manualovej stranky ip(7) sa mozno docitat, ze toto cudo je normalne a ze sa to da potlacit pomocou volby SO_REUSEADDR. Parametrom tejto volby je obycajny int, ktory ak je nenulovy, sposobi potlacenie docasneho blokovania adresy priradenej soketu. Volbu je vhodne nastavovat ihned po vytvoreni soketu (este predtym ako mu je priradena adresa) (no fungovalo mi to i po jej prideleni ale uz nie, ked som volbu nastavoval az na samom konci serveru, tesne pred zatvorenim tohoto soketu). V manpage sa mozno doctat, ze tuto volbu treba pouzivat opatrne, pretoze vraj sposobi stratu spolahlivosti TCP protokolu.
Chcel by som sa o tomto dozvediet viac. Najma o tom, ako to je s tou spolahlivostou TCP.