Τάσος_Δ Δημοσ. 27 Μαρτίου 2011 Δημοσ. 27 Μαρτίου 2011 Γράφω έναν πρόγραμμα στο οποίο χρειάζεται να δημιουργήσω Ν διεργασίες (με fork) , όπου η κάθε μια να δημιουργεί sockets τα οποία να επικοινωνούν μεταξύ τους. Αν και αρχικά φαίνεται εύκολο, έχω κολλήσει στο πώς να στήσω τα sockets! Με το ξεκίνημα της κάθε διεργασίας καλώ μία συνάρτηση υπεύθυνη για τη δημιουργία του εξυπηρέτη. Όταν έρχεται η ώρα να κληθεί η συνάρτηση accept() όπως είναι φυσικό η ροή του προγράμματος σταματάει περιμένοντας αντίστοιχη κλήση της connect() από κάποιον πελάτη. Υπάρχει τρόπος να συνεχίζεται η ροή του προγράμματος και να μη γίνεται μπλοκ στην connect; Μπορούν τα sockets να στηθούν με άλλον τρόπο ώστε να διευκολύνεται η επικοινωνία μεταξύ τους; Δεκτή οποιαδήποτε πρόταση/παρατήρηση! ΥΓ: Είμαι αρχάριος σε δαύτα.
pinball_elf Δημοσ. 28 Μαρτίου 2011 Δημοσ. 28 Μαρτίου 2011 Χρησιμοποίησε non-blocking sockets Unix Network Socket Tutorial, Non-Blocking Network Socket Tutorial
Τάσος_Δ Δημοσ. 28 Μαρτίου 2011 Μέλος Δημοσ. 28 Μαρτίου 2011 Το έλυσα βάζοντας την accept μετά την connect του client. Ευχαριστώ
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.