问题标签 [fibers]

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.

0 投票
2 回答
1797 浏览

ruby - 在 Ruby 中实现同步屏障

我试图__synchtreads()在 Ruby 中“复制”CUDA 函数的行为。具体来说,我有一组N线程需要执行一些代码,然后在执行的中点相互等待,然后再继续其他业务。例如:

我需要使用哪些工具来完成此操作?我尝试使用全局哈希,然后休眠,直到所有线程都设置了一个标志,表明它们已完成代码的第一部分。我无法让它正常工作;它导致挂起和死锁。我认为我需要使用 and 的组合,MutexConditionVariable我不确定为什么/如何。

编辑: 50 次观看,没有答案!看起来像一个赏金的候选人......

0 投票
1 回答
3509 浏览

java - 纤维如何在 Java 中存在

我知道我的问题比实际问题更具学术性。在大多数情况下,使用类似 Fiber 逻辑的线程实现是可以的。但是有什么方法可以实现JVM中描述的 Fibers 吗?

是否有任何框架缺少我来实现这一目标?

0 投票
4 回答
1953 浏览

javascript - JavaScript 中光纤的客户端实现。

AFAIK meteorjs 使用node-fibers,但他们的 github 页面声明它仅是服务器端和 v8(或者不是?)。

  1. meteorjs 是如何在客户端实现非阻塞、同步的api 的

  2. 它是否与chrome以外的其他浏览器兼容?

如果有人能给我指出纤维的纯 JS 实现,或者解释它们是如何工作的(他们有自己的事件循环吗?),我将不胜感激。

任何指向工作客户端光纤实现的 github 项目的链接也将不胜感激!

毕竟是圣诞节 :)

0 投票
1 回答
77 浏览

ruby - Ruby:获取 Fiber 父级

是否可以检索创建当前光纤的光纤?如果我能在创建新的 Fiber 时获得这些信息就足够了。

Monkey-patchingFiber#new不起作用,因为调用Fiber#current会导致“未初始化的光纤”错误。

0 投票
2 回答
682 浏览

node.js - Meteor 不适用于 Windows7 64 位

我只是在我的 Windows 7 企业 64 位机器上试用 Meteor。我通过 MSI 从http://win.meteor.com安装它,重新启动机器并在命令提示符(管理员)中执行以下操作:

cd /dc:\var
meteor create testapp
(控制台绝对没有响应)

然后我保证 node.exe 正在工作。我创建了一个带有基本 hello world 示例的 test.js 并且它有效(我浏览到 localhost:xxx 并受到欢迎)。

节点测试.js

然后我直接进入meteor.js代码,在遇到process.stderr.write在fiber(...)里面时,我决定在fiber外面的文件开头调用同样的代码。
process.stderr.write("外部光纤");
(此消息已打印;确认纤维存在问题)

现在经过研究,我偶然发现

npm 测试光纤
(输出:错误:测试already-running.js失败。代码:-1073741819 ....)

然后我做了

npm 移除纤维
npm 安装纤维

但是,测试光纤的错误仍在继续,meteor 命令的绝对无输出也是如此。

有人可以帮忙吗?我没有选择,这是我第一次尝试meteor/nodejs。

0 投票
1 回答
183 浏览

ruby-on-rails-3 - 我可以在 Heroku 上使用多少个 Ruby Fiber?

我正在试验“async rails”,以帮助减轻使用缓慢的 3rd-party 服务的痛苦。

宝石文件

配置.ru

有谁知道 Heroku 的 Cedar 堆栈上可以使用多少个 Ruby Fiber?或者如何去确定这样的事情?

0 投票
1 回答
129 浏览

ruby - Thread 和 Fiber 的奇怪行为

这段代码:

显示以下结果:

为什么current['a']返回nil嵌套纤维?怎么解释?

0 投票
1 回答
1526 浏览

ruby-on-rails - Ruby 中的 Fibers 有什么意义?

我不明白以下内容如何:

比:

0 投票
1 回答
129 浏览

ruby - 通过推送通知唤醒

认为:

  • 有一些对象(例如,数组a)和依赖于对象的条件(例如,例如a.empty?)。
  • 当前线程以外的一些线程可以操作对象(a),因此条件评估值的真实性会随着时间而变化。

如何让当前线程在代码中的某个时刻休眠并在满足条件时通过推送通知继续(唤醒)?

我不想做这样的投票:

也许使用Fiber将是一个线索。

0 投票
2 回答
2759 浏览

javascript - 什么是 Meteor 并发模型?

我正在为 Meteor 应用程序编写服务器端逻辑,该应用程序必须更新内存状态以响应来自客户端的请求。这个应用程序需要强大的并发保证——特别是,我想确保一次只执行一个更新。

我试图弄清楚 Meteor 的并发模型是否支持这一点。文档提到 Meteor 是多线程的(这将是一个问题),但在搜索之后,我得到的印象是 Meteor 实际上使用了光纤(显式调度的线程)。如果这是真的,那么只要我的代码中需要以原子方式运行的部分不进行任何 Meteor 调用(这涉及 IO 并因此产生执行锁),我就是安全的。

是这样吗?在哪里可以找到有关 Meteor 并发模型的更多信息?