问题标签 [proc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 如何将变量传递给动态更新的 Ruby proc?
这很好用,但是如果我想“绑定” v 让它动态更新怎么办。例如:
ruby - Ruby 块到数组
我正在尝试在方法中采用块参数,并将内容(符号数组)转换为数组。例如:
我知道在方法中只使用一个数组作为参数会更容易sequence
,但我试图与另一种方法保持一致。
java - Java Runtime.getRuntime().exec(); 没有运行程序
问题是我正在尝试制作一个游戏启动器,当您登录时它会开始实际游戏。
我被告知这样做的代码是Runtime.getRuntime().exec();
我可以运行简单的程序,Runtime.getRuntime().exec("firefox");
但是当我尝试运行我的程序时,它没有启动。
这是我的代码
我也试过
我正在使用 linux Debian
带java -version
输出
感谢所有帮助
ruby - 我可以将一个本身期望一个块的块传递给 ruby 中的 instance_exec 吗?
我期待代码
输出
但是得到了错误
我可以将一个本身期望一个块的块传递给 ruby 中的 instance_exec 吗?</p>
ruby - 哪个是 Ruby 已弃用的 proc?
在 Dave Thomas 与 Chad Fowler 和 Andy Hunt 所著的Programming Ruby: The Pragmatic Programmers Guide一书中,关于Proc
s 的创建,有一个脚注指出:
“实际上还有第三个,proc,但它实际上已被弃用。”
我找不到这是哪种方式。我知道以下创建方法Proc
:
1
2
3
我想知道第四种方式,如果有人能给我答案,我会很高兴。
sas - SAS Proc IML:向量的长度
如果我有一个 10X2 的矩阵,并且将在 SAS 中存储另一个变量下的矩阵长度值(因此为 10)......它是如何在 PROC IML 中完成的?
ruby - 如何在 Ruby 中创建这个小 DSL?
我的职能是:
我想在我的方法块中临时增加一个函数。
在hello_scope
中,我只是想在将scope
字符串str
传递给原始hello
方法之前将其添加到之前。这是一个例子:
当谈到 Ruby 中的这种事情时,我是个菜鸟。有人可以帮助我以优雅的方式解决这个问题吗?
编辑:
如果它使事情变得更容易,我们可以将方法作为参数传递给块,例如:
ruby - 返回 procs、lambdas 和 blocks 中的语句
我在理解return
块、procs 和 lambdas 中的工作原理时遇到了很多麻烦。
例如,在以下情况下,为什么batman_ironman_proc
工作,而batman_yield
抛出错误?
ruby - 在 ruby 的类实例中运行带有参数的传递过程
这个例子有点做作,但它来自一个测试,所以它只是以这种方式工作,并将帮助我弄清楚如何在实际的库中使用它。我有一个 lambda,定义如下:
我想将它传递给一个对象并让 proc 在该对象的上下文中运行。该对象可能如下所示:
我熟悉使用 instance_eval 运行 proc 的解决方案。
但这不起作用,因为我需要将值传递给proc。我已经管理了类似工作解决方案的东西,但感觉很hacky并且容易出错。
所有其他方法都已满足undefined method process
ruby - ruby、程序和后台处理:混合使用的策略
我正在设计一个解决方案,它需要一批对象并将它们传送到一个队列中,以便异步/稍后处理。我的目标是针对delayed_job/resque/sidekiq 的解决方案,其中工作人员被编组/ yamled/任何内容到数据存储中并在单独的进程中处理。
所以,按照我的设计方式,我有这个工人,它接受对象 ID、它的类和必须在每个对象上运行的特定操作。为什么要存储 id 和类名?这些是易于编组的元素(字符串、整数),并且大多数数据存储对编组的数据有一定的限制(是的,列 TEXT 等)。到目前为止,一切都很好。
现在,罪魁祸首:看到那边的动作了吗?它不是方法标识符。它代表一个闭包(它将每个对象作为参数,并发挥其魔力)。这个闭包是一个 Proc,并且 procs (WHY, LORD, WHY????) 不可编组。
所以,这打乱了我的计划。我正在设计一种策略,在某处拥有一个单例标识符,并动态插入一个辅助隐藏方法,该方法返回闭包。因此,作业将使用 id、类名和此辅助方法标识符进行编组。当作业运行时,会在所有对象上运行该操作,最后我将从单例实例中动态删除此方法。为此,此标识符必须是唯一的,为此我使用了 proc 闭包的 object_id。到目前为止,一切都很好。问题是,通常后台队列在与将它们排入队列的进程不同的进程上运行作业。这意味着,当作业运行时,返回我的过程的动态注入方法不可用。
所以,我的问题细分为子问题:
- 如何有效地将一批对象排队以供以后处理,其中要对它们运行的操作不一定是现有方法?
- 如何解决proc编组?
- 如何建立进程通信(不使用一些 3rd 方技术消息队列,如果可能的话,只使用普通的 ruby)
有谁知道关于我的问题的其他策略?可能是共享内存、进程间通信等等?或者也许是“编组” procs 的策略?
更新:
我设计了一个使用 DRb 的解决方案,其中我分配辅助方法的这个单例对象作为 DRb 对象提供给外部进程。有向它添加危险的公共 API 的缺点。有人知道优点/缺点/替代方案吗?