zoukankan      html  css  js  c++  java
  • linux下JThread编译及其HelloWorld

      为什么要用JThread呢,往简单的说,我们的程序经常要考虑多线程的问题,跨平台编译的问题,奈何Win32和linux下的多线程写法差别相当的大,我们只好使用相当丑陋的

    #ifdef WIN32
    #else
    #endif

     这样的代码如果只是几句也无所谓,要是多了的话搞得我们自己都不知道最主要的意图是什么了,而我们选择JThread的话,就不用被这个苦恼了

    往小的方面想,很多开源项目也依赖于其他一些开源项目,比如,JRtp就依赖JThread;所以装一下这个库也挺有用的吧


    好了,先下载源码或者到这里http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jthread

    解压一下

    tar -xvf jrtplib-3.7.1.tar.bz2

    我一般喜欢选择默认安装,即把这些库安装到/usr/local里面,所以

    ./configure

    make
    make install
    完成后记得确认一下,是不是将这个库放入
    共享库搜索路径

    不然编译完成后执行过程中你会收到这个错误
    error   while   loading   shared   libraries:   libjthread-1.2.1.so:   cannot   open   shared   object   file:   No   such   file   or   directory

    共享库的搜索路径
    可以将so复制到/usr/lib或者将其所在目录添加到/etc/ld.so.conf

    然后

    ldconfig   -v

    我使用的是后者


    或者这样执行你的程序:
    LD_LIBRARY_PATH=/usr/local/lib ./run

    好了,现在可以动手写个关于JThread的HelloWorld了

    myfunc.h


    myfunc.cpp


    只有几行的main函数

    main.cpp

    然后就是 makefile

    makefile

     make一下

    运行一下

    ./run

    run result


  • 相关阅读:
    获取系统当前时间
    使用键盘控制窗体的移动
    打开和关闭输入法编辑器
    屏蔽系统的Ctrl+c/x/v操作
    按Esc键实现关闭窗体
    屏蔽Alt+F4关闭窗体
    将回车键转换为Tab键
    node.js入门学习(六)--express
    curl POST如何查看响应的Header(转)
    node.js入门学习(五)--Demo模块化改造
  • 原文地址:https://www.cnblogs.com/linbc/p/1401643.html
Copyright © 2011-2022 走看看