Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να δημιουργήσετε μια ενιαία Θέμα στο CPP

Πολλοί σύγχρονοι επεξεργαστές είναι multi-core και ικανό να εκτελεί multi - threaded εφαρμογές . Ένα νήμα είναι μια ενιαία διαδρομή της εκτέλεσης . Μπορείτε να προσθέσετε περισσότερες διαδρομές εκτέλεσης σε ένα πρόγραμμα C + + , με την προσθήκη θεμάτων , η οποία επιτρέπει το πρόγραμμά σας για να ολοκληρώσετε πολλαπλές εργασίες παράλληλα . Υπάρχει ένα C + + βιβλιοθήκη που χειρίζεται τα θέματα , και αυτό ονομάζεται νήματα POSIX , ή " pthreads . " Δημιουργώντας ένα πρόγραμμα που δημιουργεί ένα επιπλέον νήμα της εκτέλεσης είναι ένας καλός τρόπος για να εισαγάγει τον εαυτό σας σε multi -threaded προγραμματισμού χρησιμοποιώντας την γλώσσα C + + . Τα πράγματα που θα χρειαστείτε
C + + ολοκληρωμένο περιβάλλον ανάπτυξης ( IDE ) , όπως Eclipse CDT
C + + Compiler , μια τέτοια GCC
Η Εμφάνιση Περισσότερες οδηγίες
Η

1 Τοποθετήστε το C + + IDE κάνοντας κλικ στο εικονίδιο του προγράμματος του . Όταν ανοίγει , επιλέξτε " File /New /Project" και επιλέξτε " C + + Project" για να δημιουργήσετε ένα νέο C + + project . Ένα κενό αρχείο πηγαίου κώδικα εμφανίζεται στο τμήμα επεξεργασίας κειμένου του IDE 2

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

# περιλαμβάνουν # include # include using namespace std ?
εικόνων 3

Δημιουργήστε μια λειτουργία που θα εκτυπωθούν από τον αριθμό αναγνώρισης νήμα. Αυτό το νήμα δεν κάνει πολύ περισσότερα από ό, τι σας πει ότι είναι ζωντανός και να λειτουργήσει . Γράψτε την ακόλουθη υπογραφή λειτουργία για να αρχίσει να γράφει τη λειτουργία :

void * printThreadID (void * threadid ) { }
Η

4 Τοποθετήστε τις ακόλουθες δηλώσεις μέσα στις αγκύλες του " printThreadID " λειτουργία . Οι δηλώσεις αυτές πιάσε τον αριθμό ID του νήματος από το νήμα , να εκτυπώσετε το αποτέλεσμα στο παράθυρο εξόδου , ​​στη συνέχεια, βγείτε τελικά το νήμα

μακρά id = ( long) threadid ? Printf ( ". Θέμα ID : % ld \\ n " ? , id ) ? pthread_exit ( NULL) ?
5

Δημιουργήστε μια κύρια λειτουργία . Η κύρια λειτουργία τους είναι το σημείο εισόδου στο πρόγραμμά σας , και αυτό είναι όπου το πρόγραμμά σας ξεκινά την εκτέλεση . Από εδώ , μπορείτε να δημιουργήσετε ένα νήμα που καλεί τη συνάρτηση " printThreadID . " Γράψτε την ακόλουθη δήλωση κύρια λειτουργία .

Int main ( ) { }
Η

6 Τοποθετήστε τον ακόλουθο κώδικα μέσα οι αγκύλες από τις κύριες λειτουργίες . Οι δηλώσεις αυτές ορίζουν ένα ενιαίο νήμα , στη συνέχεια, δημιουργήστε το και το εκχωρούμε τη λειτουργία " printThreadID . "

Pthread_t νήμα ? Pthread_create ( και το νήμα , NULL , printThreadID , (void * ) i ) ?

7

Εκτελέστε το πρόγραμμα πατώντας το πράσινο κουμπί " Play" . Το πρόγραμμα θα δημιουργήσει ένα ενιαίο νήμα και να εκτυπώσετε το αναγνωριστικό νήματος για το νήμα .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα