tbox v1.6.0 Release Notes

Release Date: 2016-10-30 // over 7 years ago
  • 🆕 New features

    • 👌 Support make command and compile directly without xmake
    • ➕ Add switch context interfaces into platform module
    • ➕ Add coroutine module (supports i386, x86_64, arm, arm64 ..)
    • ➕ Add simple http server demo using coroutine
    • ➕ Add simple spider using coroutine
    • ➕ Add io poller interfaces(with epoll, poll, kqueue, select)
    • 👌 Support mbedtls ssl library
    • 👍 All io modules(stream, socket, http, ..) support coroutine mode
    • 🔒 Provide lock, semaphone and channel for coroutine

    🔄 Changes

    • ⚡️ Optimize and rewrite thread local store module
    • Modify thread interfaces
    • 🗄 Mark the asio module as deprecated
    • ⚡️ Optimize exception interfaces

    🐛 Bugs fixed

    • 🛠 Fix some warning and errors for compiler
    • 🛠 Fix some thread bugs
    • 🛠 Fix parse bplist uid type

    新特性

    • 支持make进行直接编译(会去自动下载xmake进行构建)
    • 在平台库中,添加切换context上下文接口(参考boost.context实现原理进行重写,并对部分架构进行优化)
    • 新增跨平台协程模块(支持i386, x86_64, arm, arm64),提供更加易用的高性能并发编程模式
    • 新增基于协程的各种服务器开发实例(包括:简单轻量的http服务器,爬虫。。)
    • 📊 新增poller轮询器接口,实现对epoll, poll, kqueue, select的封装,逐步取代老的aiop接口
    • 新增mbedtls ssl库接口支持,目前已支持:openssl, polarssl, mbedtls
    • tbox所有stream, socket, http, dns, ssl 等io相关操作,原生支持协程模式,并且可以在线程和协程间随意切换
    • 为协程提供lock, semaphone, channel模块

    改进

    • 优化和重构线程局部存储TLS模块
    • 修改部分线程接口
    • asio模块被标记为废弃接口,下个版本将会被移除,逐步使用协程模式来实现异步io开发
    • 优化异常捕获接口

    🐛 Bugs修复

    • 修复一些编译警告和错误
    • 修复一些线相关bug
    • 修复bplist中解析uid类型失败问题