4

我想Sidekiq用于我的后台工作。但要求是 gem 依赖项是线程安全的。

在他们的维基页面中,他们提到:

   Some gems can be troublesome:

   * pg (the postgres driver, make sure PG::Connection.isthreadsafe returns true)

我将pggem 用于 PostgreSQL。

我的问题是:如何将 PG::Connection.isthreadsafe 更改为 true?

4

1 回答 1

3

gem 调用这个 c 库调用:

PQisthreadsafe();

记录在这里:

http://www.postgresql.org/docs/8.2/static/libpq-threading.html

相关文档是这样的:

如果在构建 PostgreSQL 发行版时使用了配置命令行选项 --enable-thread-safety,则 libpq 是可重入且线程安全的。

因此,您将需要重新编译 libpg(或获取线程安全包,如果可用)以使其真正成为线程安全的。

于 2013-03-13T20:06:55.233 回答