background image

Σχεδιασμός και κατασκευή ενός υβριδικού αμυντικού αυτοματοποιημένου ρομποτικού συστήματος 

 

 

 

172 

5.  Μέσω της συνάρτησης accept() στην πλευρά του server, γίνεται δεκτή η σύνδεση και 

ξεκινά η αποστολή και η λήψη δεδομένων μέσω των συναρτήσεων write() και read(). 

Η τελευταία συνάρτηση επιστρέφει τον αριθμό των bytes που έλαβε ή την τιμή -1 σε 

περίπτωση σφάλματος.  

 

6.  Για  τον  τερματισμό  της  μεταξύ  τους  επικοινωνίας  χρησιμοποιείται  η  συνάρτηση 

close(). Μετά την ολοκλήρωση της συνάρτησης το socket απενεργοποιείται και εάν ο 

server  παραμένει  ανοιχτός  τίθεται  σε  κατάσταση  «αναζήτησης  -  ακοής»  για  νέα 

σύνδεση

18

.  

 

Εικόνα 84: Επικοινωνία μεταξύ client και server. Στο παραπάνω διάγραμμα παρουσιάζονται όλες οι 

απαραίτητες διαδικασίες για την επικοινωνία μεταξύ των δύο αυτών οντοτήτων.  

 

                                                             

18

 

Τίθεται  η  προϋπόθεση  να  μην  υπάρχει  κάποια  αίτηση  που  να  περιμένει  εξυπηρέτηση  στην  ουρά. 

Στην περίπτωση αυτή ξεκινά ξανά η διαδικασία που περιγράφηκε για την καινούρια σύνδεση μέχρις 

ότου να αδειάσει εντελώς η ουρά.