У меня есть программа повышения потока из учебника, я могу скомпилировать ее без каких-либо проблем или предупреждений, но когда я запустил ее, я не получаю никакой выходной формы eclipse. Программа заканчивается один раз. Я использую MiNGW с моим затмением, может это проблема?Boost threads завершает работу программы?
Есть ли у кого-нибудь идеи? Все предложения приветствуются!
Ниже приведен код учебник, который я использовал, его из this site:
#include <iostream>
#include <boost/thread.hpp>
#include <boost/date_time.hpp>
void workerFunc()
{
boost::posix_time::seconds workTime(10000);
std::cout << "Worker: running" << std::endl;
// Pretend to do something useful...
boost::this_thread::sleep(workTime);
std::cout << "Worker: finished" << std::endl;
}
int main(int argc, char* argv[])
{
std::cout << "main: startup" << std::endl;
boost::thread workerThread(workerFunc);
std::cout << "main: waiting for thread" << std::endl;
workerThread.join();
std::cout << "main: done" << std::endl;
return 0;
}
Update
Я связан Pthreads под MinGW линкера и программа компилируется, но результат тот же. Когда я поставил я breakpoiiny чуть ниже основной я получаю это:
Мишень порядок байт устанавливается автоматически (в настоящее время мало порядок байт) [Новая тема 4168.0xbf8]
И заканчивается ли у кого есть идея программы?
Вы пытались создать исполняемый файл и запустить его без затмения? – nikitoz
Вы пробовали отладку? Не забывайте, что вы можете иметь несколько точек останова в нескольких потоках в Eclipse, чтобы вы могли видеть, что ваш основной шаг за шагом, а также ваш рабочий поток. – Shaz
Прекрасно работает на визуальной студии 2010. – IdeaHat