nickolasemp Δημοσ. 19 Ιανουαρίου 2008 Share Δημοσ. 19 Ιανουαρίου 2008 Τα πράγματα είναι απλά... Λέμε τώρα! Έχω ένα πρόγραμμα που υλοποιεί έναν φλοιό και ένα χρονοδρομολογητή. Θέλω ο χρονοδρομολογητής να δουλεύει κανονικά, αλλά όταν πατιέται ένα πλήκτρο να σταματαέι ο χρονοδρομολογητής και ο φλοιός να δέχεται τη νέα εντολή. Σας στέλνω κάτωθι τον κώδικά μου... Ευχαριστώ εκ των προτέρων για την όποια απάντηση P.S.: Το πρόβλημά μου έγκειται στη γραμμή 208... fh.zip Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Επισκέπτης Δημοσ. 19 Ιανουαρίου 2008 Share Δημοσ. 19 Ιανουαρίου 2008 Δεν υπάρχει non blocking μορφή της συνάρτησης scanf και γενικά non-blocking συνάρτηση. Non-blocking μπορεί να είναι ένας file descriptor, οι συναρτήσεις για blocking και non-blocking I/O είναι σχεδόν οι ίδιες (read, write, connect κτλ). Η διαφορά είναι ότι στα non-blocking file descriptors/sockets η συνάρτηση επιστρέφει κατευθείαν και δεν περιμένεις. Μερικές συναρτήσεις που μπορείς να χρησιμοποιήσεις για non-blocking i/o είναι οι : select, poll, epoll Ρίξε μια ματιά στα παρακάτω Link http://cs.baylor.edu/~donahoo/practical/CSockets/code/TCPEchoServer-Select.c http://www.lowtek.com/sockets/select.html Να σημειώσω ότι το non-blocking i/o δεν είναι portable Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
alkisg Δημοσ. 19 Ιανουαρίου 2008 Share Δημοσ. 19 Ιανουαρίου 2008 Δεν θα ήταν πιο λογικό να χρησιμοποιήσεις fork ώστε ο δρομολογητής να είναι ξεχωριστή διεργασία από το φλοιό, και shared memory ή κάτι σχετικό ώστε να επικοινωνούν μεταξύ τους; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.