//Example code showing TAU monitoring a threaded application. //Threading example code updated to include Windows Threads. //Original code by Sameer Shende. #ifdef TAU_DOT_H_LESS_HEADERS #include using namespace std; #else /* TAU_DOT_H_LESS_HEADERS */ #include #endif /* TAU_DOT_H_LESS_HEADERS */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int GetTid(void) { return RtsLayer::myThread(); } int fourth(void) { TAU_PROFILE("fourth()", "int ()", TAU_DEFAULT); // cout <<"Reached fourth Thread:" << GetTid()<stacklen = 128*1024; usptr_t *arena = usinit("/dev/zero"); if (!arena) cout <<"Arena not initialized!"<bstacksize=0; sginap(40); priv_->pid=sprocsp(threaded_func, PR_SALL, priv_, priv_->sp, priv_->stacklen); if(priv_->pid == -1) { perror("sprocsp ERROR"); return 1; } sginap(40); priv_->pid=sprocsp(threaded_func, PR_SALL, priv_, priv_->sp, priv_->stacklen); if(priv_->pid == -1) { perror("sprocsp ERROR"); return 1; } sginap(40); priv_->pid=sprocsp(threaded_func, PR_SALL, priv_, priv_->sp, priv_->stacklen); if(priv_->pid == -1) { perror("sprocsp ERROR"); return 1; } cout <<"Started Main... tid = "<< GetTid() <