当前位置: 首页 > 面试题库 >

在推理服务中使用tf.Session时,线程安全吗?

倪举
2023-03-14
问题内容

现在我们已经使用TensorFlow训练和导出模型。我们可以像使用方法tensorflow/serving一样使用此模型来实现推理服务。

我有一个关于该tf.Session对象是否是线程安全的问题。如果为true,我们可以在启动后初始化该对象,并使用singleton对象处理并发请求。


问题答案:

tf.Session对象对于Session.run()来自多个线程的调用是线程安全的。

在TensorFlow
0.10之前,图形修改不是线程安全的。这个问题在0.10版本中已修复,因此您可以在Session.run()调用的同时添加节点到图中,尽管出于性能原因不建议这样做。相反,建议sess.graph.finalize()在从多个线程使用会话之前进行调用,以防止意外的内存泄漏。



 类似资料:
  • 我在Azure Service Bus中使用代理消息传递(主题/订阅),我很好奇如何(或者是否)使用SSL保护通信。

  • 我尝试在php中实现线程,在windows上使用xampp我可以做到这一点,但是我有一个使用cpanel的linux服务器,在配置中线程安全被禁用,如何在我的服务器linux上启用?我调用phpinfo(),它显示“线程安全”已禁用

  • 例如,我通过 ExecutorService 实例执行可运行块,而该可运行块通过同一 ExecutorService 实例执行一些异步代码。所以我的代码看起来像这样: 这段代码是线程安全的吗,因为ExecutorService没有状态 在我的真实应用程序中,我有一些线程在其中创建了新线程,我想使用一个具有可配置线程池大小的ExecutorService实例(可能是一种不好的做法?)。

  • 我有许多线程处理对象,其中我使用将数据库列映射到对象。 我知道在任何Java中都不是线程安全的。因此,我在中得到了一些不可预测的结果。例如,我在中也看到了。 下面是我的代码: 我的核心池大小约为20这个应用程序的最大约50。这些线程在某个时候可以处理数据库中大约100个交易记录。 使此日期格式化线程安全的最佳方法是什么?我应该使用FastDateFormat直接替换吗? 有没有更好的替代方法来确保

  • 问题内容: 在Linux上是否使用线程安全写入stdout ?使用下级命令怎么办? 问题答案: 它不是C标准指定的-取决于您对C标准库的实现。实际上,C标准甚至根本没有提到线程,因为某些系统(例如嵌入式系统)没有多线程。 在GNU实现()中,stdio中处理对象的大多数高级函数都是线程安全的。通常没有名字的(例如)。但是,线程安全性处于每个函数调用级别:例如,如果您多次调用,则保证每个调用都是原子

  • 问题内容: 我正在使用SQL Server 2008。 我有一个表A,它在一秒钟内接受许多插入/更新。插入后,更新我想获取受影响的行数。 在执行查询时,同一查询可以由应用程序再次调用。因此,如果当前执行是 在INSERT之后但在IF块之前,该 怎么办。 您认为出于这个原因可能会给出错误的结果吗? 还是在它的上下文中总是安全的? 问题答案: 是的-它很安全。它始终引用当前查询中的上一个操作 但 如果