//------------------------------------------------------------------------------ /** @file "Pthreads/C++/Primer 0 - hello/simple_hello_world.cpp" @brief Jednostavan "Hello World" Pthread program. Jednostavan "Hello World" program koji prikazuje upotrebu osnovnih Pthreads API funkcija za kreiranje, pridruzivanje i terminaciju niti. */ //------------------------------------------------------------------------------ #include #include //------------------------------------------------------------------------------ using namespace std; //------------------------------------------------------------------------------ /** @brief Posao koji nit treba da izvrsi. @param arg Niz znakova koje treba ispisati. @return void* Povratna vrednost funkcije. Sastoji se u prihvatanju i kopiranju argumenta u lokalnu promenljivu i njen ispis na standardni izlaz. */ void* hello(void* arg) { char* m = (char*) arg; cout << m << endl; pthread_exit(NULL); return 0; } //------------------------------------------------------------------------------ /** @brief Glavni program. @return int Rezultat izvrsavanja programa. U glavnom programu se kreira nova nit koja pokrece hello rutinu. Glavna nit se pridruzuje niti koju je stvorila i ceka da ona zavrsi svoj posao. */ int main() { pthread_t tid; char* message = "Hello world"; #ifdef WIN32 pthread_win32_process_attach_np(); #endif pthread_create(&tid, NULL, hello, message); pthread_join(tid, 0); cout << "kraj" << endl; pthread_exit(NULL); #ifdef WIN32 pthread_win32_process_detach_np(); #endif return 0; } //------------------------------------------------------------------------------