Linux下安装 ZThread 2.3.2

来源:互联网 发布:矩阵变换器 编辑:程序博客网 时间:2024/05/24 15:41


1 下载 ZThread 2.3.2 zthread.sourceforge.net/download.html

2 解压以后进行安装

     1)./configureCXXFLAGS=-fpermissive           //千万不要少了CXXFLAGS=-fpermissive,否则在make的时候会报错。

     2)sudo make

     3)sudo make install

thread库的用法和Java的多线程很相似,名字都差不多,比如Thread,Runnable,^_^

 

举个例子入门一下吧

 

在zthread里有一个任务的概念,任务就是要做的一件事,任务是怎么定义呢?

两件事要做:
一、继承Runnable这个抽象类。
二、实现run接口

Runnable在源代码中的定义如下:

classRunnable{

public:

   virtual void run() = 0;

   virual ~Runnable(){}

}

 

我们现在定义一个任务,这个任务用来数数吧

 

//File:Counter.cpp

#include<iostream>

#include<zthread/Runnable.h>

#include<zthread/Thread.h>

 

usingnamespace std;

using namespace ZThread;     // Zthread所有的变量,类等都在这个名字空间内

 

classCounter : public Runnable

{

private:

    int_id;                 // 任务的ID号

    int_num;                // 当前数到几

public:

   Counter(int id):_id(id){}

    voidrun()               // 实现run函数

   {

       _num = 1;

       while(_num <=50 )

       {

            cout <<_id << "  " << _num <<endl; 

            _num++;

       }

   }

};

 

intmain()

{

   try

   {

        in id = 1;

        Thread t(new Counter(id));

        

   }

   catch(Synchronization_Exception& e)

   {

       cerr << e.what() <<endl;

   }

}

// end offile

 

然后编译它

g++ -otest Counter.cpp -lZThread

最后边的一个选项是编译时候动态连接到libZThread库

然后运行吧

./test

如果报错的话,按下边方式运行

LD_LIBRARY_PATH=/usr/local/lib/

这就是基本线程运行的例子了.

原创粉丝点击