この問題が発生しました-タイトルで..
私はこのコードを持っています:
#include <thread>
#include <iostream>
void my_thread_func()
{
std::cout<<"hello"<<std::endl;
}
int main()
{
std::thread t(my_thread_func);
t.join();
}
ウェブからどこかから取得しました。コンパイラ オプション -pthread -std=gnu++0x (-std=c++0x も試しました) と segfault があります。すべてが vmBox の Debian にあります。以前に他のコードを起動しましたが、それらは機能しました。突然、すべての動作中のアプリで std::thread を使用してスレッドに segfault が発生しました。
編集:これはgdbからのものです:
(gdb) where
#0 0x00000000 in ?? ()
#1 0x08048dc9 in thread<void (*)()> (this=0xbffff3fc,
__f=0x8048b9f <my_thread_func()>) at /usr/include/c++/4.4/thread:129
#2 0x08048bea in main () at ../test.cpp:18
(より高度なアプリを std::thread t(&ClassName::my_thread_func,ptr) で起動すると、エラーは同じですが、他の行 [thread:133])
ウェブで検索しましたが、適切なものが見つかりませんでした。