【发布时间】:2014-12-11 03:57:19
【问题描述】:
我在 Linux 上的 C 中使用线程进行了相当多的工作,现在我尝试在 Windows 上使用 C++ 做同样的事情,但我在打印到标准输出时遇到了麻烦。在线程执行的函数中,我有:
void print_number(void* x){
int num = *(static_cast<int*> (x));
std::cout << "The number is " << num << std::endl;
}
包裹在一个创建三个线程的循环中。问题是,尽管所有内容都被打印出来,但线程似乎在每个“
例如,我上次运行它时得到了
The number is The number is 2The number is 3
1
当我希望每个都在单独的行上时。我猜每个线程都能够在另一个线程在“
【问题讨论】:
-
看看这个互斥量和信号量的区别stackoverflow.com/questions/62814/…
标签: c++ multithreading