当前位置:  技术问答>linux和unix

高手救命,linux下C++,多线程问题

    来源: 互联网  发布时间:2015-11-22

    本文导语:  环境如下: 程序模拟一个网络环境,一个Node对象代表一个网络节点,希望Node对象实例化时生成一个线程。用每个线程间的信号量机制模拟网络节点通信。 问题如下: 函数pthread_create(&ptd, NULL, &Run, (void *)0))  要...

环境如下:
程序模拟一个网络环境,一个Node对象代表一个网络节点,希望Node对象实例化时生成一个线程。用每个线程间的信号量机制模拟网络节点通信。

问题如下:
函数pthread_create(&ptd, NULL, &Run, (void *)0))  要求Run一定要是static成员函数。那么Run函数无法访问其他非static成员,这样太受限制了。可不可以不用static成员函数启动线程

class Node
{
private:

int NodeID;
pthread_t    ptd;
sem_t        SemData;
void process();

public:

Node()
{
    sem_init(&SemData, 0, 0);
    pthread_create(&ptd, NULL, &Run, (void *)0));//要求Run一定是静态成员
};

static void *Run(void *)  //可不可以不是静态函数
{
   while(1)
  {
     sem_wait(&SemData);//错误,SemData非static
     process();         //错误,process非static
  }
}
}

|
用pthread_create的最后一个参数传递类实例指针,如pNode,则可以在静态成员函数里调用:pNode->func()。

|
看看这个是不是你要的
http://blog.csdn.net/blankman/archive/2005/03/29/333031.aspx

    
 
 

您可能感兴趣的文章:

  • 一个线程问题,很困惑,高手帮个忙
  • 网络通讯和多线程问题 请高手相助!献上100分
  • 我只有这么多分了,请多线程高手帮一下!!!!!!!
  • Linux 多线程出现段错误 高手请进啊!
  • 请教高手,线程问题,怎样暂停或杀掉多线程?
  • 高手请进:linux 多线程占用内存问题
  • Linux线程阻塞问题 高手请进
  • 关于线程的问题,还请各位高手们能帮着看看
  • 入门,请教线程编程的问题,请各路高手帮帮忙
  • 复杂的线程同步问题,请教高手
  • 高手请看过来,我有些问题,我是新手.关于线程的!
  • 有没有使用过Linux下线程池技术的高手,请为我指点迷津!!!
  • 请linux下多线程编程的高手进来下
  • 急需关于linux多线程的代码工程实例-高手请进啊
  • 请问关于socket客户端因事件启动新线程的问题.高手请进
  • 请高手指点,多线程程序,如何调试找出 SIGSGEV 发生的位置?
  • 问个管理线程的问题-高手赐教
  • 请问高手LInux 下的进程、线程的切换具体是如何实现的?
  • Liunx多进程,多线程编程高手进来
  • 线程问题,请高手指教
  • 救命呀,高手请进来救命呀!
  • 高手救命,很急——ORACLE817安装在UNIXWARE711上,手工启动数据库后在netasst中连接错误,高手帮我看看?
  • Socket弱弱地问!!高手救命
  • 高手救命啊
  • 关于文件的传输问题,搞了一天了,请高手救命!
  • 懂unix shell、oracle的高手,救命啊!!!
  • 救命,linux或solaris高手请进!
  • 请高手进来救命!!!
  • JAVA高手救命,如何对JSP程序进行错误控制!
  • 救命~~求助~~iptables高手请进
  • 各位高手救命呀!(急,在线等候)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请教高手lvs的奇怪问题,我挺着急,希望高手别潜水,就就我,先谢谢了
  • 各个高手看看这个问题!本人第一次学习java所以要各位高手的帮助。。
  • 高手请进,中文乱码问题,这是我同一个问题的第五个帖子了,大伙帮忙,心情好郁闷.期待高手.
  • 初学者的问题,关于LINUX的安装的问题,谢谢高手执教!!!
  • EJB问题,请教高手(非高手莫进)
  • 一个关于日期的问题!(菜鸟问题,请高手不吝赐教)
  • 一个对高手来说很弱智的问题!关于安装的问题!谢谢!
  • 各位高手:光盘安装Linux9出现问题,请指教!
  • 一个严重的问题,高手请进。。。。
  • 求助ftp编程高手一个问题----有关免费包libftp-5.0
  • 有关Diskedit的问题,高手请进!
  • 问个关于服务器的问题?高手进
  • 关于字体显示的问题,请高手指点!!
  • fedora6安装花屏问题!!!!!!!急求高手执教!!!!!!!
  • freebsd做前台 使用win2000做储存器问题问题(非高手免进)
  • 100分请教高手 LCD 颜色变色的问题
  • 统计进入论坛的人数问题一侧,与其他问题不同的。高手解答!
  • 求教高手一个简单的XML问题
  • webmail问题,请高手帮忙!!!谁会使用IMP 3.0????!!!
  • 问题太难,请教高手,关于raid1功能的错误检测的实现
  • 高手,高手,高高手请进!
  • 有熟悉EXIM的高手高手么??
  • to 高手:学java应该怎样一步步学习,从菜鸟到高手.
  • 高分请高手,高手定能解决
  • 请问高手在linux中用什么命令可以做linux的启动盘???在等待高手??
  • 有高手研究Agent++麽?里面有个thread.h,蛮难读的,请高手指点
  • 难道高手区里的人就是高手?
  • 在dos下用bc31挑战高手******开发mssql程序,连接时报link err:undefined symbol GETNOTE in module DBEXTERN?(挑战高手)
  • 真正的linux高手,请看过来,看你符合高手标准不?
  • 难道这没有高手吗?难道这没有乐于助人的高手?(高分酬谢62+50+50)
  • 关于我对linux高手用yum,非高手用源码的理由


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3