歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> epoll for qt網絡模塊,直接替換qt的select模型

epoll for qt網絡模塊,直接替換qt的select模型

日期:2017/3/1 9:45:56   编辑:Linux編程

最近在開發im服務器,需要大並發鏈接。QT默認的是使用select模型的,這種輪詢方式非常慢。我 github找到了epoll版本的qt.修改了QT的socket notify內核,不需要修改原來編寫的代碼,直接設置QT的事件轉發方式就行了。支持qt4.0和5.0

在 main文件添加

#include<QCoreApplication>
#include"configserver.h"
#include<QThread>
 
#ifdefQ_OS_LINUX
#include"qeventdispatcher_epoll.h"
#endif
 
 
intmain(intargc,char*argv[])
{
 
#ifdefQ_OS_LINUX
QCoreApplication::setEventDispatcher(newQEventDispatcherEpoll);
#endif
 
QCoreApplicationa(argc,argv);
 
 
returna.exec();
}

在。pro文件添加

linux{
    QT += core-private
 
    SOURCES += ../common/qeventdispatcher_epoll.cpp
    HEADERS += ../common/qeventdispatcher_epoll.h
    }

可以直接跨平台了使用了。上qt epoll源碼下載地址:

------------------------------------------分割線------------------------------------------

FTP地址:ftp://ftp1.linuxidc.com

用戶名:ftp1.linuxidc.com

密碼:www.linuxidc.com

在 2014年LinuxIDC.com\4月\epoll for qt網絡模塊,直接替換qt的select模型

下載方法見 http://www.linuxidc.com/Linux/2013-10/91140.htm

------------------------------------------分割線------------------------------------------

Qt 的詳細介紹:請點這裡
Qt 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved