【发布时间】:2020-03-19 10:00:16
【问题描述】:
我正在尝试结合 boost::Asio、boost::thread_group,其中每个线程都有自己的 libpqxx(Prostgres) 连接到数据库。我似乎找不到任何 asio/thread_group 示例,其中任务运行的线程具有连接特定信息。 Asio 似乎专注于包含运行它所需的所有信息的任务。我是否正在寻找错误的组合来解决我的特定问题?
我有很多请求进入我的程序,这些请求中的每一个都需要对数据库运行 SQL 命令(在我的例子中是 timescaledb)。这些请求必须在有限数量的数据库连接上运行(通常总共 8 个)。
我的计划是建立一个由 8 个线程组成的线程组,每个线程都有自己的数据库连接,每个线程都连接到 asio::run。这样我就可以向 asio::post 发布新查询,并在结果进来时通过 signal2 获得回调。
【问题讨论】:
标签: boost-asio boost-thread libpqxx