Új hozzászólás Aktív témák

  • j0k3r!
    őstag

    További vizsgálódás után még az alábbi dolgokat figyeltem meg:
    1) a főprogram még azelőtt törli az üzenetsort, mielőtt a gyerkőcöknek lenne esélyük kiolvasni az üzenetet. Mivel az msgrcv hívások sikerességét nem ellenőrzöd ezt nem veszed észre. Lásd még: feladatkiírás 10. pontja.
    2a) a főprogram már akkor beteszi a következő üzenetet mielőtt az előző feldolgozása megtörtént volna.
    2b) az előző pont miatt az első gyerek például rögvest megcsinálhat több feldolgozást is, ezért a kimenetben összekeverednek az eredmények. Erre azonban semmi megkötés nincs a feladatkiírásban szóval szerintem ez nem baj.
    3) ugyanabba fájlba párhuzamosan szeretnének írni, emiatt vesznek el adatok. A fájlt hozzáfűzésre (append) kell megnyitni akkor jó lesz

    hello!

    1. koszonom szepen a tanacsokat, megprobaltam kijavitani a leirtak alapjan.
    erre jutottam: c, sh, kimenet

    2. uzenetsor torlese ele beraktam egy sleep(1);-et (ez valoszinuleg ganyolas). mivel lehetne legegyszerubben leellenorizni, hogy mar elment az n * m db uzenet, ami utan mehet a torles? (en arra gondoltam, hogy letrehozok a foprogramban egy int valtozot (shmat es tarsai, hogy elerjek a gyerekprocessek is), amit novelek minden egyes sikeres uzenetkules utan, de hatha van egyszerubb megoldas is)

    3. mivel 'vizsgalodtal', hogy ezekre problemakra rajottel?

Új hozzászólás Aktív témák