🎯tinyCoro悬赏令
悬赏令简介
tinyCoroLab区别于网上其它实验课程的重要区别是作者本人提供了一份参考实现tinyCoro来供实验者在缺少思绪时参阅,作者本人也一直在更新tinyCoro并期望为读者呈现一份工业级协程库代码,奈何作者本人功力尚浅,目前的tinyCoro存在诸多问题,甚至不能通过tinyCoroLab的全部测试,因此作者增设了 tinyCoro 悬赏令,其包含tinyCoro目前存在的亟待解决的问题,各位有兴趣的读者可以尝试解决,相关代码也会被直接并入tinyCoro。
❓我已经解决了某个问题,相关代码如何提交呢? 请先将tinyCoro主分支fork至个人仓库,本地修改后提交至个人仓库,然后进入作者的tinyCoro的pulls页面并点击pull request,将个人tinyCoro的主分支并入作者的tinyCoro,注意合并前确保个人仓库的修改是基于作者仓库的最新提交,作者会在审核通过后将代码正式并入tinyCoro
❓悬赏令意思是解决了有奖励吗? 呃。。。暂时没有🤡,起名悬赏令仅仅是好听,不过相信你在解决这些问题后一定会有所收获!
🗡️悬赏令
内存安全修复
对于使用C++构建的编程库,保证内存安全是最核心最基本的要求,因此 tinyCoroLab 对于各项实验均设有内存安全测试。
作者本人的tinyCoro可以通过各项功能测试,但大部分实验的内存安全测试均未能通过,即在运行过程中产生了内存泄露、无效内存使用等问题, 作者暂时还未修复,感兴趣的读者可尝试修复该内存问题,tinyCoro期待你的代码合入!
http协议支持
对于异步协程库来说,不支持http协议那么该库就不能算作完整,不过目前主流的协程库cppcoro和libcoro均未支持,而作者经过调查后发现,构建http server本身就并不简单,尤其是支持路由注册功能,github上大部分的http服务器充其量只相当于文件服务器。
对于tinyCoro的http支持要求是支持http协议解析并实现服务器和客户端且服务端支持路由注册功能,最重要的是将其中涉及到的一系列IO操作与tinyCoro的异步机制完美融合。
目前的初步想法是将功能较为完善的开源项目cpp-httplib整合至tinyCoro,若读者有兴趣完成此部分,可以在include/coro/io/net/http文件夹下添加代码,期待收到你的提交~
Last updated