> Odlicno; najprej sem jo odprl, potem pa se odstranil bzero in sedaj stvar > "dela". V narekovaje sem postavil zato, ker moram seda razvozlati, kako > izvest ucinkovito branje. Enota namrec po vsakem ukazu vrne nek niz znakov, > ki pa ni na voljo takoj, ko izvedem ukaz (sleep(1) pomaga, vendar je > predolg)...
Ce res uporabljas blocking read, ti be read blokiral, dokler ne dobi EOL znaka (ker imas canonical branje). Pri non-canonical ti bo blokiral, dokler ne prebere N znakov. Canonical branje je uporabno samo v primeru, da tvoja enota vraca neke znake, ki se zakljucijo z newline znakom. Ce temu ni tako, tega ne mores uporabljati. Pa jaz bi na tvojem mestu razmislil o non-blocking branju ali pa vsaj uporabi c_cc[VTIME] timeouta (to opcijo uporabljam jaz, pa se je izkazala za zelo zanesljivo in preprosto za uporabo - beres v interni buffer, ce ti timeout-ne, ves, da je nekaj narobe). Ce se tvoji napravi zmesa, je dobro, da vsaj softver obdrzi glavo na pravem mestu... :) LP! Anze _______________________________________________ lugos-prog mailing list [email protected] http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-prog
