background image

Σχεδιασμός και υλοποίηση ενός έξυπνου παιχνιδιού για τη συναισθηματική 

παρακολούθηση και το γονικό έλεγχο ενός παιδιού 

 

 

40 

 

επιδεικνύει π.χ. την ώρα λήψης ή και άλλες χρήσιμες πληροφορίες και αποθήκευσής τους 

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

Τέλος,  η  πιο  χρήσιμη  λειτουργία  του  Motion  για  την  παρούσα  διπλωματική 

εργασία  αποτέλεσε  η  συμπεριφορά  του  σα  webcam  server.  Η  μετάδοση  του  βίντεο 

γίνεται σε μορφή multipart jpeg (mjpeg), μέσω μίας προκαθορισμένης πόρτας, της 8080. 

Σε περίπτωση που υπάρχουν πολλαπλά παράλληλα νήματα (thread) ο χρήστης μπορεί να 

ορίσει  τις  πόρτες  για  τη  μετάδοση  βίντεο  του  καθενός.  Το  βίντεο  αυτό  μπορεί  να 

προβληθεί από Mozilla Firefox περιηγητή ή από μία εφαρμογή της Java, το Combozola. 

Το βίντεο αυτό, φορτώνεται μέσω της σχετικής ηλεκτρονικής διεύθυνσης στην εφαρμογή 

που  κατασκευάστηκε,  ώστε  να  πραγματοποιείται  η  οποιαδήποτε  αναγνώριση  πάνω  σε 

αυτό. [11] 

 

 

2.5 Νήματα (Threads) 

 

Ως νήμα (thread) χαρακτηρίζεται μία ανεξάρτητη ακολουθία εντολών και ελέγχων 

εντός  προγράμματος.  Η  έννοια  του  νήματος  πολλές  φορές  συγχέεται  με  αυτή  της 

διεργασίας,  καθώς  τα  νήματα  αναφέρονται  συχνά  σαν  ελαφριές  διεργασίες.  Ωστόσο  η 

βασική  διαφορά  ανάμεσά  τους  είναι  ότι  τα  νήματα  μπορούν  και  μοιράζονται  τον  ίδιο 

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

ίδιου  προγράμματος  έχουν  δυνατότητα  πρόσβασης  σε  κάποιο  αντικείμενο  αυτού,  ενώ 

δύο  διαφορετικές  διεργασίες  συνήθως  βλέπουν  διαφορετικά  αντίγραφα  του  ίδιου 

αντικειμένου. Μία διεργασία μπορεί να διαθέτει πολλαπλά νήματα, τα οποία περιέχουν 

τον  κώδικά  προς  εκτέλεση  της  διεργασίας,  καθώς  και  το  εννοιολογικό  της  πλαίσιο, 

δηλαδή τις τιμές των μεταβλητών σε οποιαδήποτε χρονική στιγμή. [12] 

Σε έναν απλό επεξεργαστή, η πολυνημάτωση (multithreading) πραγματοποιείται με 

τη  μέθοδο  της  πολυπλεξίας  με  διαίρεση  χρόνου,  δηλαδή,  πιο  συγκεκριμένα,  ο 

επεξεργαστής  μεταπηδά  μεταξύ  των  διάφορων  νημάτων.  Αυτή  η  εναλλαγή  μεταξύ  των 

διεργασιών ονομάζεται μεταγωγή περιβάλλοντος, και συμβαίνει σε πολύ τακτά χρονικά 

διαστήματα, τέτοια έτσι ώστε ο χρήστης έχει την εντύπωση ότι τα νήματα εκτελούνται