XCode std::thread C++
XCode std::thread C++
对于一个小型学校的小型项目,我需要创建一个简单的客户端/服务器构造,该构建将在路由器(带有OpenWrt)上运行,并且我正在尝试在此应用程序中使用线程做一些事情。
我的C 技能非常有限,所以我在互联网上找到了这一点。
#include <thread>
#include <iostream>
void doSomeWork( void )
{
std::cout << "hello from thread..." << std::endl;
return;
}
int main( int argc, char *argv[] )
{
std::thread t( doSomeWork );
t.join();
return 0;
}
当我尝试在Xcode(4.5.2)中运行此问题时,我会收到以下错误:
尝试使用已删除的函数
它显示了一些代码:
__threaad_execute(tuple<_Fp, _Args...>& __t, __tuple_indices<_Indices...>)
{
__invoke(_VSTD::move(_VSTD::get<0>(__t)), _VSTD::move(_VSTD::get<_Indices>(__t))...);
}
我认为我需要对"构建设置"或"链接库"做点事?但是我不太确定该怎么做。我认为我可能需要设置以下设置(我在这里找到)
- 在您的项目的"构建设置"选项卡中,向下滚动到" Apple LLVM编译器4.1-语言"
- 将设置" C 语言方言"设置为" C 11 [-std = C 11]"
- 将设置" C 标准库"设置为" LIBC (LLVM标准C 库具有C 11支持)"
但是那些已经设置的设置。
有没有标志/图书馆或我缺少的东西?
在Xcode中使用G 而不是LLVM。不要忘记在编译器构建设置中链接线程libs(-lpthread-或-pthread,-lrt)。并计算win/mac/linux OS的线程行为的差异(尽管它是POSIX)
相关文章:
- 在std::thread中,joinable()然后join()线程安全吗
- <Windows>为什么 std::thread::native_handle 返回类型为"long long unsigned int"的值,而不是 void*(又名 HANDLE)?
- 分离一个静态常量 std::thread?
- 尝试使用 std::vector<std::thread时出现静态断言失败错误>
- 使用 thread 类在 C++ 中构造线程的动态数组时出错
- 当指向对象的指针作为参数传递给 std::thread 时,内存可见性
- 如何从 std::thread 返回值
- 在C++中使用并行化的预期速度是多少(不是 OpenMp,而是 <thread>)
- 将 std::thread by 值推送到列表中
- 转发变量参数列表以模拟 std::thread
- 嵌入式设备 -> std::thread -> FreeRTOS?
- 对 'std::thread::_M_start_thread CMake 的未定义引用进行基准测试
- std::thread 增加 DLL 引用计数,从而防止卸载 DLL
- 如何防止 std::thread 在 QT 中冻结 GUI?
- 对带有唯一指针的 std::thread 使用类成员函数时出现编译错误
- C++ - Thread Pool
- 为什么参数在构造 std::thread 时移动两次
- std::thread::_Invoker 使用线程编程时出错
- 在线程 A 中创建一个 std::thread 对象,在线程 B 中连接
- 为什么编译器抱怨 std::thread 参数在转换为右值后必须是可调用的?