这只是一个线程池的框架还有许多不足 : 没有实现server->client数据发送 , 还有许多细节没有完善。 Lock.cpp : 锁的操作 , 读锁可以并发 , 写锁独占. Queue.h : 队列的封装 , 队列的读和写都加了锁的保护. Socket.cpp : 套接口的简单封装. Thread.cpp : 线程的封装实现了些简单的线程停止,运行等功能 , 启动别的线程的时候需要继承次类. Worker.cpp : 用户接口类 , 用户需继承此类。 ListenThread.cpp(继承Threa...
多线程和epoll 问题, epoll_wait 不返回
设计的思想是这样的。
起一个子线程,这个线程称会不断建立与服务器的连接。
主线程则会 不断在epoll_wait 等待返回然后处理。 我这里epoll_wait 不返回。
通过网络监控 发现 子线程的的连接应该建立起来了
有三步握手了。 但我的程序一直不返回
还有2点 read write 的 阻塞和非阻塞有什么区别吗?
connect 的阻塞和非阻塞有什么区别?
[code]#include
由于文章太长,只能放在我的blog上。希望大家多多测试,进行完善。 修改意见可以在评论中提出。 http://blog.csdn.net/tingya/archive/2004/12/23/226614.aspx
一个线程epoll_wait,而另一线程epoll_ctl将fd添加进来,或修改fd对应的事件。不知道这样做是否没问题。
1 请问如何在linux中用标准C++实现线程池; 我想定义一个类在这个类中封装对线程的操作,但用线程的函数只能定义为静态的或全局的,这样它成分类的方法,如何是它能够在创建不同的对象时每个对象能有自己的线程操作方法。 2 请问在linux中如何暂停一个线程,到合适的时候再将它唤醒
1 请问如何在linux中用标准C++实现线程池; 我想定义一个类在这个类中封装对线程的操作,但用线程的函数只能定义为静态的或全局的,这样它成分类的方法,如何是它能够在创建不同的对象时每个对象能有自己的线程操作方法。 2 请问在linux中如何暂停一个线程,到合适的时候再将它唤醒
小弟最近用linux做一个网络服务程序.使用每一个请求建一个线程的模式.使用: if(pthread_create(&tid,NULL,ThreadRec,(void *)&argIn2)) printf("create rec thread fail..\n"); 语句创建线程,使用:pthread_exit(NULL);return NULL; 结束线程. 服务运行一切顺利.使用 ps axms命令查看线程数目.随着用户连接与断开增减.一切正常. 问题是:当用户连接与断开过多.也就是曾经创建的线程达到一定数目.pthread_create返回失败.用户线程不能...