易语言资源网 - 做最全的易语言资源下载社区
【精易招聘】UniApp开发工程师 精易论坛授权登录

基于libcurl的异步单线程高并发http模型   [复制链接]

    2019-03-19 09:01:47
    网络相关源码
    易语言资源网
    1793 次浏览
    来源链接



最近在工作中用到了libcurl请求大量网页,感觉使用多线程的方式线程数太高的话会影响性能,然后就写了一个简单的基于libcurl和reactor模型的框架,实现单线程高并发,不需要考虑竞争条件的问题,提高性能的同时也能提高安全性,毕竟不需要互斥锁临界区什么的,减轻了多线程编码的负担。

这两天有个朋友在易语言当中使用,就改成了一下,可以供易语言调用,由于本人易语言水平不怎么样,也就没使用易语言重写,直接用C++编译出DLL供易语言调用。

今天抽空写了两个小demo,也一并发出来了。这个异步框架和平常使用的同步请求思路上有些不同,具体有哪些不同,可以看源码。

本框架只是对libcurl的简单封装,没有太高的技术含量,由于框架没有经过太多的测试,所以难免会有一些bug,如遇到可以发邮件给我,也可以在github发issue

框架源码请移步github:https://github.com/windpiaoxue/curlevent



点我下载 (已有 183 次下载)

引用模块


源码文件名 模块文件名
代理验证.e
curlevent.ec
精易模块.ec
简单例子.e
curlevent.ec


引用支持库


源码文件名 支持库文件名 支持库标识
curlevent.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
代理验证.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
扩展界面支持库一 2.0 27bb20fdd3e145e4bee3db39ddd6e64c
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
简单例子.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0


[错误报告]   上一篇:易语言字符画例子...     下一篇:win7星号密码查看器研究...