如何打开新的控制台窗口打印第二个线程的输出?

时间:2015-02-12 11:39:05

标签: c++ windows multithreading console

我在Windows平台上使用c ++ 11,我想知道如何打开一个新的控制台窗口来显示子线程的输出。

mutex mu;
bool flag = false;
void printg()
{

    int j=printf("testing /");
    int count=0;
    for(int i=0;true;)
    {
        sleep(1.0);
        printf("\b");
        printf("\\");
        fflush(stdout);
        sleep(1.0);
        printf("\b");
        printf("/");
        fflush(stdout);
        count++;
        lock_guard<mutex> gaurd(mu);
        if(flag)
        {
            return;
        }
    }
}
int main(int argc, char** argv) 
{
    thread t(printg);
    pid_t p ;

    sleep(5);
    mu.lock();
    flag = true;
    mu.unlock();
    t.join();
    cout<<endl<<"hello "<<endl;

    return 0;
}

我希望将线程t的输出放在不同的窗口和/或控制台上,与父线程分开。从长远来看,我想分离线程并使其足够强大,以在其自己的窗口上显示输出。有没有解决这个问题。我正在使用Windows 7机器。

0 个答案:

没有答案