Προς το περιεχόμενο

Non blocking μορφή της scanf


nickolasemp

Προτεινόμενες αναρτήσεις

Τα πράγματα είναι απλά... Λέμε τώρα!

 

Έχω ένα πρόγραμμα που υλοποιεί έναν φλοιό και ένα χρονοδρομολογητή. Θέλω ο χρονοδρομολογητής να δουλεύει κανονικά, αλλά όταν πατιέται ένα πλήκτρο να σταματαέι ο χρονοδρομολογητής και ο φλοιός να δέχεται τη νέα εντολή. Σας στέλνω κάτωθι τον κώδικά μου...

 

Ευχαριστώ εκ των προτέρων για την όποια απάντηση

 

P.S.: Το πρόβλημά μου έγκειται στη γραμμή 208...

fh.zip

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν υπάρχει 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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν θα ήταν πιο λογικό να χρησιμοποιήσεις fork ώστε ο δρομολογητής να είναι ξεχωριστή διεργασία από το φλοιό, και shared memory ή κάτι σχετικό ώστε να επικοινωνούν μεταξύ τους;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...