为什么 active_record 会破坏 Ruby 陷阱的行为以及如何解决它?

发布于 2024-07-17 02:09:48 字数 617 浏览 3 评论 0 原文

在过去的几天里,我一直在尝试解决困扰我的 active_record 问题。 railsforumstackoverflow 已经完全干涸了。 这些帖子的长度和详细程度可能阻止了评论者,所以我再次尝试 - 简而言之。

在 Windows 下,陷阱行为在我的脚本中是正常的 - 直到我“需要'active_record'”,此时陷阱不再正常工作。 它们根本无法运行,这使我的数据库陷入混乱。

相关脚本通过活动记录与其他系统上的其他脚本进行交互。 当用户按下 control-c 或脚本因任何其他原因终止时,脚本在退出之前通知数据库其(脚本的)即将到来的厄运至关重要。 陷阱失效了,我被困住了。

有解决方法吗? 如果您对测试代码感兴趣,请参阅我的链接帖子。 只需几行即可重现该问题。

谢谢...

In the last couple of days, I've been trying to get a solution to an active_record issue that has been plaguing me. Posts on railsforum and stackoverflow have turned up completely dry. The length and level of detail in those posts may have dissuaded commentors, so I'm trying again - in brief.

Under windows, the trap behavior is normal in my scripts - until I "require 'active_record'," at which point traps no longer function properly. They fail to run at all and it is leaving my database in disarray.

The script in question interacts with other scripts on other systems through active record. When a user hits control-c or the script terminates for any other reason, it is critical that the script notify the database of its (the script's) impending doom before it exits. With trap out of commission, I'm stuck.

Is there a workaround? If you're interested in test code, see my linked posts. The problem can be reproduced in just a few lines.

Thanks...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

独行侠 2024-07-24 02:09:48

您是否考虑过在 Windows 平台上更新 Ruby? 我使用您的代码示例进行了一些测试,并得出以下结果:

  • Ruby 1.8.6-p36、Gem 1.3.2、ActiveRecord 2.2.2:失败
  • Ruby 1.8.7-p72、Gem 1.3.1、ActiveRecord 2.1.0:有效
  • Ruby 1.8.7-p72、Gem 1.3.2、ActiveRecord 2.2.2:可以运行
  • Ruby 1.9.1-p0、Gem 1.3.1、ActiveRecord 2.3.2:有时可以运行 >

Have you considered updating Ruby on the Windows platform? I made some tests with your code sample and came out with the following results:

  • Ruby 1.8.6-p36, Gem 1.3.2, ActiveRecord 2.2.2: FAILS
  • Ruby 1.8.7-p72, Gem 1.3.1, ActiveRecord 2.1.0: WORKS
  • Ruby 1.8.7-p72, Gem 1.3.2, ActiveRecord 2.2.2: WORKS
  • Ruby 1.9.1-p0, Gem 1.3.1, ActiveRecord 2.3.2: WORKS sometimes
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文