问题标签 [chord]

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 投票
1 回答
1819 浏览

delphi - How to use this DXF Bulge Arc function getArcDataFromBulge()?

I have a problem to use this bulge arc (dxf parser) function in C++ getArcDataFromBulge().

https://github.com/Embroidermodder/Embroidermodder/blob/master/libembroidery/geom-arc.c

I have my drawArc() function which need 'start angle' and 'sweep angle' parameters from this getArcDataFromBulge() function. My drawArc() function use OpenGL 2D coordinate system with right side zero angle position and when I get values from getArcDataFromBulge() and recalculate it (0+-, 180+-, 360+-) I have something like unexpected opposite angles as results. It looks like clockwise-counterclockwise problem, but I'm think is not, I'm not sure. Do you have some idea what is going on?

For example:

After calculaton: arcMidAngle = 179.999 When I add and subtract from this point half of arc chord angle, I get start and end angles of my arc: 90°, 270° but it's not the same arc when I open dxf with some CAD software, it is opposite than origin drawing.

0 投票
2 回答
3702 浏览

python - Celery:中止或撤销和弦中的所有任务

我将以下设置与 Redis 代理和后端一起使用:

chord([A, A, A, ...])(B)

  • 任务 A 进行一些检查。它AbortableTask用作基础并定期检查task.is_aborted()标志。
  • 任务 B 通知用户计算结果

用户可以中止 A 任务。不幸的是,当调用AbortableAsyncResult(task_a_id).abort()所有任务 A 实例时,只有活动的实例被中止。工作人员尚未收到的任务的状态更改为ABORTED,但它们仍在处理中并且is_aborted()标志返回 False。

我当然可以revoke()挂起任务而不是abort()-ing 它们,但问题是在这种情况下,弦体(任务 B)不再执行。

如何停止所有挂起和正在运行的任务 A 实例,同时仍确保任务 B 运行?

0 投票
2 回答
2528 浏览

python - Celery chord 不等待子任务(一组链)

我的真实情况是,我想从 api 调用中获取活动列表,并为每个活动触发一系列函数。一旦所有的链都完成了,我需要调用一个函数来报告结果。

我试图尽可能简化这一点并拥有以下代码。这会运行,但在链完成之前调用和弦解锁函数。在此代码中,这意味着它无法对结果数组求和。

dmap功能基于此答案。我也看过这个答案。最后一个链接暗示我想做的事情可能是不可能的,因为“没有什么可以同步的,因为组是并行发生的”。

generate当函数返回一个数组而不是单个项目时,我无法弄清楚如何使解决方案工作。

运行上面的日志显示(早期?)和弦解锁,因此xsum尝试对 3 为 的结果数组求和None

我希望/期望该过程等到每个链链完成后再调用和弦解锁。

0 投票
1 回答
133 浏览

p2p - 应用程序可以在同一个 DHT 中共存吗?

如果您创建一个使用分布式哈希表 (DHT) 的新应用程序,则需要引导 p2p 网络。我的想法是您可以加入现有的 DHT(例如 Bittorrent DHT)。

这可行吗?当然,我们假设相同的技术。将 Chord 与 Kademlia 结合显然是不可行的。

如果是,这会被认为是寄生的还是共生的?寄生的意思是它以某种方式与原始用途发生冲突。共生,如果它对两个应用程序都有好处,因为它们相互支持。

0 投票
3 回答
2839 浏览

clojure - 在 Reagent / Clojurescript 中保持客户端状态是最新的

我不确定解决此问题的最佳方法:

我正在编写一个 Web 应用程序,它为许多“项目”对象实现了基本的 CRUD 功能。因此,用户可以创建他/她自己的一组项目。

我已经编写了一个用于添加/删除/列出项目的 REST API,并且我已经编写了一个 Reagent 前端客户端。如您所料,客户的项目保存在试剂原子(ratom)中。

这就是有趣的地方。

在我看过的所有教程中,它向您展示了如何更新 Ratom,您的 GUI 将自动更新。我有那个,那行得通。

我目前正在做的是,在更新客户端状态时,我进行 REST POST 调用以更新数据库上的服务器状态。

但是,这感觉不对。我现在将状态存储在两个地方:客户端和服务器上,两者都可能不同。

如果我将其实现为一个普通的旧网页,服务器将向客户端发送一个页面,其中包含数据库的最新状态。但是,状态已经存在于客户端上,我不知道应该如何同步它。

在初始 POST 成功后,我是否应该再次调用服务器(GET 请求)?这可以代替鼠尾草的内容。然后我提出了两个请求……这似乎很浪费。

或者是使用chordsente之类的东西来异步管理客户端状态的最佳实践。这会更好,因为这意味着来自其他用户的更改将在客户端立即刷新。但是,我看不到任何演示对其中任何一个做出反应的教程,所以也许我走错了路。

所以问题很简单,应该如何结合使用 REST?

谢谢

0 投票
0 回答
1519 浏览

python - Celery - 如何在和弦中运行成功和错误回调?

所以我有两个任务需要并行调用,然后如果它们成功/失败我需要做一些事情,我还需要将它们的结果用于另一个任务。我将在这里试一试白板,以使其更加清晰:

我认为和弦可能是最好的选择,因为我可以并行执行加法和减法,然后获取它们的结果并执行另一个回调。

这是我的任务的代码:

所以在 django shell 中玩耍,我尝试了以下方法:

这是它产生的异常:

欢迎任何想法和建议,非常感谢。

0 投票
0 回答
338 浏览

c++ - 使用 autotools 编译旧项目

当我尝试运行配置脚本时,我一直在努力解决这个错误。这是一个有 12 年历史的图书馆。首先,我尝试使用所有自动工具和 GCC 的现代版本来生成配置脚本。

然后,我尝试使用当时的工具版本来生成它,但是当我运行配置文件时,我仍然得到相同的错误,这始终是损坏的变量CPPFLAGS

这是配置错误:

这是描述错误的 config.log 部分:

我想知道是否有人遇到过类似的问题。谢谢!

工具版本:

  • GCC 3.4、4.4、4.7.2
  • Autoconf/aclocal/autoheader 2.59、2.69
  • 自动制作 1.9.6、1.15
  • 操作系统:Centos 5.9、Ubuntu 12.04 都是 64 位

程序链接: https ://github.com/sit/dht

编辑:

以下是第 22754 行附近的配置脚本部分:

0 投票
2 回答
5099 浏览

python - 即使主要任务失败也运行和弦回调

即使主要任务失败,是否可以运行和弦回调?

我创建了一个和弦,我添加了一堆任务并注册了一个回调。我的问题是,如果其中一项任务失败,则不会触发回调,但我希望以任何一种方式触发回调。

我试图用 si() 注册回调(不变性

我还尝试将参数添加ignore_result=True到两个任务装饰器中,但没有成功。

0 投票
0 回答
117 浏览

c++ - 一次读取文件 1 行,每行数据量可变

我有一个关于如何使用 isstream 从我的输入 .dat 文件中读取数据以用作和弦实现的问题我有各种长度和类型的输入。我的输入示例如下所示:

addC 2 #ignore this msg
addC 3 #ignore this msg
addC 9 #ignore this msg
print 9
insert 2 data0
insert 9 data1
insert 3 data2

我想逐行捕获每个输入,忽略 # 键后面的任何消息。

我到目前为止所做的如下:

但是,当我读入我的文件时,它似乎有时会以某种方式读入超过所需的内容。例如,

//插入 0 之前的前几条命令很好
command = insert number = 2 input = data0 INSERTING
data0 at: 2
command = insert number = 9 input = data1
command = insert number = 3 input = data2
//程序在这里停止,因为我相信阅读中有一些错误

0 投票
0 回答
139 浏览

rabbitmq - 当和弦头中包含组和链时,和弦会不断重试而不执行callbak,为什么?

当我在 celery 中执行以下代码时,任务执行成功:

结果是这样的:

但是当我将链更改为和弦时,任务将不断重试而不执行回调。以下是我更改的代码:

和这样的日志:

那么和弦有什么问题呢?有人帮忙,谢谢