ruby - Ruby 中的工作线程

标签 ruby qtruby

我正在使用 ruby​​ + qt 编写一个简单的内存游戏(试图暂时摆脱 c++...)
为了允许 X 秒超时来查看两个打开的部分,我需要计时器或在后台线程中完成工作。

在不重新发明轮子的情况下实现这一点的最简单方法是什么?
ruby 线程? Qt线程? Qt 定时器?

最佳答案

我不知道这是否是最好的解决方案,但是:

block=Proc.new{ Thread.pass }
timer=Qt::Timer.new(window)
invoke=Qt::BlockInvocation.new(timer, block, "invoke()")
Qt::Object.connect(timer, SIGNAL("timeout()"), invoke, SLOT("invoke()"))
timer.start(1)

让 ruby​​ 线程工作!根据您的需要调整 start(x)。

关于ruby - Ruby 中的工作线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/313629/

相关文章:

ruby - 在 Ruby 中切换字符串中的每一对字符

ruby - 如何将模块中的方法带入 ruby​​ 中方法调用者的范围?

ruby - 将 Hashie::Mash 输出解析为 ruby​​ 中的 Json

ruby - 初始化 rbenv 并从 shell 脚本运行 ruby​​ 脚本

ruby - Qt Ruby QListWidget Item添加数据后图标为空白

ruby-on-rails - 嵌套资源 Rails 4.1 路由中的单个自定义参数名称

ruby - QtRuby 可以与 Qt 5 一起使用吗?

ruby - qtbindings ubuntu 安装错误

ruby - 如何在 Windows 上构建 Qt Ruby/ruby-KDE/Qt 绑定(bind)?

ruby - QtRuby 与 DRb 或 EventMachine