查看完整版本: [-- 基于协程的网络编程库QtNetworkNg --]

QTCN开发网 -> Qt基础编程 -> 基于协程的网络编程库QtNetworkNg [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

songhuirong1 2019-11-19 08:50

基于协程的网络编程库QtNetworkNg

最近在网上看到一个Qt的网络库,叫QtNetworkNg,这是它的简单介绍:

QtNetworkNg 是一个基于协程的网络编程库。目标为 C++ 开发者提供简洁而不失强大的网络编程 API,成为 C++ 界最好的网络编程库。目前已经具备完善的协程管理功能、基本的 socket 编程和完善的 HTTP 1.1 客户端。
和 boost::asio 相比,QtNetworkNg 的 API 更为简单,使用方法与 Python 的 gevent 和 requests 相当类似,简洁而不失强大。和大多数协程库相比,QtNetworkNg 提供了更为完善的协程管理机制,甚至还包含了协程锁、事件等实现。
目前 QtNetworkNg 已经支持多种平台。如名称所示,QtNetworkNg 依赖于 Qt.
QtNetworkNg 根据平台选择使用 ucontext/window fiber/fcontext。默认使用 fcontext,这是 boost context 所使用的高效汇编代码。
官网地址:https://qtng.org/
github地址:https://github.com/hgoldfish/qtnetworkng
有人了解这个网络库吗?性能如何?高并发如何,比如linux下是否支持epoll。

liulin188 2019-11-19 13:18
重复造轮子没啥意思,这个开发者是国人吧,到不如写点那些优秀库的教程。
成为 C++ 界最好的网络编程库,牛逼吹的有点大!!!
至少我不会去用,没看出有比其他库强的地方。。。。


songhuirong1 2019-11-19 13:44
liulin188:重复造轮子没啥意思,这个开发者是国人吧,到不如写点那些优秀库的教程。
“成为 C++ 界最好的网络编程库”,牛逼吹的有点大!!!
至少我不会去用,没看出有比其他库强的地方。。。。
 (2019-11-19 13:18) 

Qt自带的Network库是个遗憾啊,不支持高并发,官方一直不更新。如果第三方能够弥补的话,那也是非常不错的。

liulin188 2019-11-19 13:56
songhuirong1:Qt自带的Network库是个遗憾啊,不支持高并发,官方一直不更新。如果第三方能够弥补的话,那也是非常不错的。 (2019-11-19 13:44)

如果你真是需要高并发的话,qt也用不到吧,qt也就做做客户端,写代码方便。
服务端直接linux  c epoll这种现在不要太成熟,何必再去研究其他的,bug一堆

songhuirong1 2019-11-20 09:04
liulin188:如果你真是需要高并发的话,qt也用不到吧,qt也就做做客户端,写代码方便。
服务端直接linux  c epoll这种现在不要太成熟,何必再去研究其他的,bug一堆
 (2019-11-19 13:56) 

如果不用Qt的话,解决方案有很多,我是希望Qt自身能支持,这样就不用去学其它的东西了,也不辜负Qt功能强大这一说。

圣域天子 2019-11-20 10:39
liulin188:如果你真是需要高并发的话,qt也用不到吧,qt也就做做客户端,写代码方便。
服务端直接linux  c epoll这种现在不要太成熟,何必再去研究其他的,bug一堆
 (2019-11-19 13:56) 

我就是一直用Qt做服务端的~~~

圣域天子 2019-11-20 10:46
songhuirong1:如果不用Qt的话,解决方案有很多,我是希望Qt自身能支持,这样就不用去学其它的东西了,也不辜负Qt功能强大这一说。 (2019-11-20 09:04) 

看到有对IOCP的支持,也找到了epoll的方法使用,应该是支持的。

songhuirong1 2019-11-20 12:21
圣域天子:看到有对IOCP的支持,也找到了epoll的方法使用,应该是支持的。 (2019-11-20 10:46) 

你说的是哪个支持IOCP和epoll?是Qt吗?还是QtNetworkNg这个库。

圣域天子 2019-11-20 15:03
songhuirong1:你说的是哪个支持IOCP和epoll?是Qt吗?还是QtNetworkNg这个库。 (2019-11-20 12:21) 

QtNetworkNg 呀

Qt本身当然不支持

songhuirong1 2019-11-21 12:21
圣域天子:QtNetworkNg 呀
Qt本身当然不支持 (2019-11-20 15:03) 

我大致看了下,没看到,这里面教程都没写完整,这个库用的人太少


查看完整版本: [-- 基于协程的网络编程库QtNetworkNg --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled