c++

http://www.eclipse.org/cdt/downloads.php


GCC最基本的用法是∶gcc [options] [filenames]


但是今天我的实验结果却是

g++ testThread.cpp -o test -pthread -std=c++11 这个是正确的


g++ -lpthread -std=c++11  -o test testThread.cpp 可以编译通过,但是会报

terminate called after throwing an instance of 'std::system_error'
  what():  Enable multithreading to use std::thread: Operation not permitted
Aborted (core dumped)

这个错误

当我把-lphread改为-phread时,

g++ -pthread -std=c++11  -o test testThread.cpp

编译通过并能正确运行,所以基本的用法是正确无误的,自己的一点粗心引出自己对基本用法的怀疑.

关于线程thread

thread对象并不会自动管理线程结束,需要手动控制。常见的控制手段有两个,join和detach。join用于等待线程结束,而detach的功能是托管线程,线程仍然继续运行至结束,但不再受到thread对象控制


用std::ref显式取得对象的引用


发布了39 篇原创文章 · 获赞 1 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章