- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
设置后sidekiq ,我观察到关于传递给 Sidekiq::Client.push
方法的参数的奇怪行为
如果我将 self.class
作为参数,那么我要么得到一个 SystemStackError(堆栈级别太深)
,要么服务器挂断,此后不接受任何请求。
Sidekiq::Client.enqueue(ActivityWorker, self.id, self.class)
SystemStackError (stack level too deep):
actionpack (3.2.12) lib/action_dispatch/middleware/reloader.rb:70
Rendered /usr/local/rvm/gems/ruby-1.9.3-p194@restro/gems/actionpack-3.2.12/lib/action_dispatch/middleware/templates/rescues/_trace.erb (2.0ms)
Rendered /usr/local/rvm/gems/ruby-1.9.3-p194@restro/gems/actionpack-3.2.12/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (2.0ms)
Rendered /usr/local/rvm/gems/ruby-1.9.3-p194@restro/gems/actionpack-3.2.12/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (37.8ms)
但是如果我给 self.class.name
那么它就没有任何缺陷。Sidekiq::Client.enqueue(ActivityWorker, self.id, self.class.name)
我发现 args 在传递给 worker 之前是序列化的,但我无法弄清楚这种情况。
这是我的 Worker 类
class ActivityWorker
include Sidekiq::Worker
sidekiq_options queue: 'high', retry: false
def perform(res_id, res_class)
# do some activity
end
end
最佳答案
你不应该使用像类对象这样的参数来排队作业。它应该是简单的类型,例如字符串、数字、哈希和它们的数组。
对于大多数类,除了我提到的特殊类和其他一些类,Sidekiq 将此参数序列化为 redis,就像空哈希一样。因此无法将其反序列化回您的类。
我建议你将 self.class.name
传递给 enqueue
方法,然后使用 constantize
来获取类来自字符串。
关于ruby-on-rails - sidekiq 将类作为 args 发送给 stacklevel too deep 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15680414/
你能告诉我,下面两种 scss 样式之间的区别吗?我对此没有清楚的认识。 :host { display: inline-block; /deep/ { span { co
/deep/和::ng-deep 这些在 DOM 模式下也被弃用了,我想知道将来是否会有/deep/和::ng-deep 的替代方案,或者我们应该开始使用其他方式? ::ng-deep .result
长期以来,我一直在寻找这个问题的明确答案。是否有可靠且推荐的替代策略来执行此操作?此问题的不正确答案包括: Just favor ::ng-deep for now 和 if component au
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 2 年前。 Improve this qu
我正在阅读 DQN 网络上的 deepmind 自然论文。 我几乎得到了关于它的一切,除了一个。我不知道为什么以前没有人问过这个问题,但无论如何对我来说似乎有点奇怪。 我的问题: DQN 的输入是一个
我在我的新 Jetpack Compose 应用程序中设置了一个底栏,其中包含 2 个目的地。我尝试遵循 Google 的示例。 例如它看起来像这样: @Composable fun MyBottom
所以,我读过 here在 Vue.js 中,您可以在选择器中使用 /deep/ 或 >>> 来创建适用于子组件内部元素的样式规则。但是,尝试在我的样式中使用它,无论是在 SCSS 中还是在普通的旧 C
我正在尝试实现DQN和DDQN(两者都有经验回复)来解决OpenAI AI-Gym Cartpole环境。这两种方法有时都能学习并解决这个问题,但并非总是如此。 我的网络只是一个前馈网络(我尝试过使用
scss中下面两个有什么区别,在片段中给出一些例子。 :host::ng-deep .content-body { ... } 和 .content-body :host::ng-deep { ...
在我们的元素中,我们使用了 Angular Material 进行开发。我们已经覆盖了 使用::ng-deep 的 Angular Material 样式自定义 CSS 属性。 在使用::ng-dee
我尝试熟悉 Q-learning 和深度神经网络,目前尝试实现 Playing Atari with Deep Reinforcement Learning . 为了测试我的实现并尝试使用它,我坚持尝
我开始在 Vue 3 中收到以下警告 ::v-deep用法。 ::v-deep usage as a combinator has been deprecated. Use ::v-deep() in
谁能给我解释一下 df2 = df1 df2 = df1.copy() df3 = df1.copy(deep=False) 我已经尝试了所有选项并执行了以下操作: df1 = pd.DataFram
我对 PyTorch 比较陌生,但我对 Keras 和 TensorFlow 有很好的经验。我关注了这个article在我自己的训练脚本中使用 DDP。然而,出于某种原因,我总是最终得到: proce
我正在尝试为 Conv2D 和 transposeconv2D 层编写 dropconnect 代码。按照 https://pytorchnlp.readthedocs.io/en/latest/_m
我正在做一个 mask 检测项目,我使用 ultralytics/yolov5 训练了我的模型。我将训练好的模型保存为一个 onnx 文件,你可以在这里找到模型文件 model.onnx .现在我希望
我正在研究一种强化算法,我对此很陌生,并试图掌握一些东西。 Player1Env 查看 7x6 Connect4 游戏网格。我按如下方式初始化类: def __init__(self): su
我有几个嵌入矩阵,假设 E1 矩阵用于 Glove,E2 用于 Word2vec。 我想构建一个简单的情感分类器,它采用该嵌入的可训练加权和。 例如,对于单词“dog”,我想在学习 x 和 y 时得到
我正在使用它处理深度学习和医学图像分类。我使用大脑 MRI 数据并将它们转换为 jpg。然后使用 VGG16 进行训练。当我检查损失、准确性、验证损失和验证准确性时,我看到了下图。 accuracy
我设计的网络包括转置卷积层。(pytorch 中的 ConvTranspose2d) 我想获得网络的感受野大小。 感受野的概念是否也适用于转置卷积层? 如果是,那我怎样才能得到它? 最佳答案 您可以使
我是一名优秀的程序员,十分优秀!