1

私はこのコードを持っています:

#include <iostream>
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>

using namespace std;

void* printHello (void* threadId){

    cout << "in print Hello"<< (long) threadId << endl;
    pthread_exit(NULL);
}

#define num 1000000

int main () {

    pthread_t threads [num];
    int rc;
    long t;


    for (t=0 ; t<num; ++t){

        cout <<"in main" << "thread Id = " << t << endl;
        rc = pthread_create(&threads[t] , NULL , printHello , (void*)t);
        if (rc) {
            cout << "ERROR"<< "rc= "<< rc << endl;
            exit(-1);
        }


    }

    pthread_exit(NULL);
}

ps -Lf, ps -T, ps -Lmシェルから上記のコードと同時に実行するにはどうすればよいですか? シェルコマンドプロンプトで両方を実行するにはどうすればよいですか? 別のタブを使用しても正しく動作しないようです。

4

1 に答える 1

3

あなたの質問に厳密に答えるには、同じウィンドウの別々の端末でtmuxを使用する方法があります。必要な数だけ開き、コマンドを準備し、tmux プロンプトで:setw synchronize-panes onを使用して入力を複製するように tmux を設定し、 Enter キーを押してすべてのコマンドを同時に実行します。これは次のようになります。 tmuxパワ!

于 2012-06-06T04:30:30.147 に答える