zoukankan      html  css  js  c++  java
  • c++多线程

    1、代码

    //thread.cpp
    #include <iostream> #include <pthread.h> //多线程相关操作头文件,可移植众多平台 using namespace std; #define NUM_THREADS 5 //线程数 void* say_hello( void* args ) { cout << "hello..." << endl; } //函数返回的是函数指针,便于后面作为参数 int main() { pthread_t tids[NUM_THREADS]; //线程id for( int i = 0; i < NUM_THREADS; ++i ) { int ret = pthread_create( &tids[i], NULL, say_hello, NULL ); //参数:创建的线程id,线程参数,线程运行函数的起始地址,运行函数的参数 if( ret != 0 ) //创建线程成功返回0 { cout << "pthread_create error:error_code=" << ret << endl; } } pthread_exit( NULL ); //等待各个线程退出后,进程才结束,否则进程强制结束,线程处于未终止的状态 }

    2、Linux编译:g++ -o thread thread.cpp

    3.输出结果可以看出,运行两次,得到的结果是不一样的。

    参考:http://blog.csdn.net/hitwengqi/article/details/8015646 和 http://www.cnblogs.com/youtherhome/archive/2013/03/17/2964195.html

     4.在vs2010中运行  缺少的thread预编译包(下载地址: http://pan.baidu.com/s/1EVKbO 密码: jm9d)

          多次运行结果总是有变化。

    5. c++ 11将多线程写入标准库,使得使用更加方便。

    http://baike.baidu.com/subview/1006573/16194836.htm

    http://www.cplusplus.com/reference/thread/thread/?kw=thread

     附加:多核运算  openMP

     http://www.cnblogs.com/yangyangcv/archive/2012/03/23/2413335.html

  • 相关阅读:
    【Linux】ZeroMQ 在 centos下的安装
    ZeroMQ下载、编译和使用
    在Linux系统上安装Git
    Linux下python2.7安装pip
    [Tyvj1474]打鼹鼠
    [BZOJ2908]又是nand
    [SPOJ375]Qtree
    浅谈算法——树链剖分
    [BZOJ5368/Pkusc2018]真实排名
    [FJOI2007]轮状病毒
  • 原文地址:https://www.cnblogs.com/lwngreat/p/4278665.html
Copyright © 2011-2022 走看看