问题标签 [message-passing]

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 回答
499 浏览

popup - 在 chrome 扩展中,背景页面可以与 page_action 弹出窗口对话吗

内容脚本可以使用

背景页面可以使用

page_action 弹出窗口可以使用

那么,有没有办法让后台页面与弹出窗口对话?

用例是一个

  • 弹出窗口已打开并希望从页面获取一些信息

  • 所以它向后台页面发送请求

  • 背景页面现在向内容脚本发送请求

  • 并且内容脚本将响应发送回后台页面。

  • 所以现在后台脚本需要将它发送到弹出窗口!

    这是怎么发生的?

0 投票
5 回答
5220 浏览

concurrency - Message passing vs locking

What exactly is the difference between message passing concurrency schemes and lock-based concurrency schemes, in terms of performance? A thread that is waiting on a lock blocks, so other threads can run. As a result, I don't see how message-passing can be faster than lock-based concurrency.

Edit: Specifically, I'm discussing a message-passing approach like in Erlang, compared to a shared-data approach using locks (or atomic operations).

0 投票
1 回答
141 浏览

objective-c - 如何使用 Obj-C 块实现 whileTrue 控制流方法?

是否可以使用块在 Objective-C 中实现类似 Smalltalk 风格的 whileTrue: 方法?具体来说,而不是:

我希望能够(通过名为 OOBoolean 的 bool 原语上的包装器)做类似...

我很难理解这将如何实现......

0 投票
1 回答
523 浏览

javascript - 对象类型在消息传递中丢失

我正在开发 Chrome 扩展程序,但遇到以下问题。当某个事件发生时,我的后台页面会创建一个带有chrome.tabs.createAPI 的新选项卡(页面)并发送一个对象。

发送的对象(称为项目)是一个对象列表,具有称为项目的特定类(原型)。

这里有一些代码:

另一方面,在新创建的页面中,我收到了发送的对象

问题是,当我收到对象列表时,newpage.html对象类型丢失了。确实console.dir()在 new中使用, itemsListbackground page中的对象类型被正确报告,但在接收到的项目列表对象中却没有。newpage.html

我可以background.html通过字符串手动序列化他中的数据,然后手动反序列化,newpage.html但我想知道是否有更好的方法来负担这个并防止列表中的对象类型(即项目)丢失。

0 投票
1 回答
2346 浏览

message-passing - 如何向 WCF 服务发送大消息?

我在 WCF 服务中有一个 DataContract。它有一个数组,我在客户端代码中设置该数组。如果我将数组设置为超过 1000,000,它会抛出一个错误,说 BadRequest。System.ServiceModel.ProtocolException :远程服务器返回意外响应 (400) 错误请求。

如何克服这一点?我想向服务发送更多数据。

0 投票
2 回答
2192 浏览

javascript - Chrome 扩展程序:消息传递混乱

我正在尝试将页面上已检查项目的数量发送到弹出窗口。弹出窗口上的add输入按钮会向控制台发送警报或将网页上选中的复选框数量发送到控制台。

我的脚本没有这样做,我认为消息传递的工作方式可能存在混淆。这是我所拥有的:

显现:

弹出窗口.html

main_content_script.js

0 投票
3 回答
1066 浏览

jquery - jQuery Ajax 不从外部 PHP 返回变量

我有这段代码从表单中获取信息并将其发送到 form.php 进行处理。form.php 回显应该输入到#success 的变量(全名:$fullname 电子邮件:$email 链接:$link 说明:$instr)。我的代码在 Firefox 和 chrome 中有两种不同的行为方式。

在 Firefox 中,我被发送到正确显示输出的 form.php,但显然我不应该被发送到那里,我应该留在我的主页上并在#success 中查看该输出。基本上,ajax 不起作用。

在 Chrome 中,ajax 确实有效,但只会将 Fullname: Email: Link: Instructions: 拉入#success。本质上,jQuery 并没有通过 POST 传递变量。

主页.php:

表格.php:

0 投票
1 回答
838 浏览

javascript - Chrome 扩展中从内容脚本到后台页面的消息传递

谷歌浏览器扩展消息传递问题:

在这个 Chrome 扩展中

我的弹出页面:

我的脚本页面:

我没有从内容脚本中得到任何响应。

编辑:

根据@ serg,我已将代码移至后台页面。但是,它仍然无法正常工作

0 投票
1 回答
780 浏览

ruby - Ruby 编程风格:异步消息传递

希望这不是太主观...

我对基于消息的异步编程的想法很陌生——换句话说,编写一个自给自足的“小程序”集合,它们都同时运行并且只响应接收到的消息。

我知道这种风格必然会占用大量的 CPU 周期。


除此之外,还有什么可以支持反对异步消息传递风格的呢?

0 投票
6 回答
13540 浏览

c++ - Actor 模型:为什么 Erlang/OTP 很特别?你能用另一种语言吗?

我一直在研究学习 Erlang/OTP,因此,我一直在阅读(好吧,略读)关于演员模型的内容。

据我了解,actor 模型只是一组函数(在 Erlang/OTP 中称为“进程”的轻量级线程中运行),它们仅通过消息传递相互通信。

这在 C++ 或任何其他语言中实现似乎相当简单:

您的每个进程都是派生 BaseActor 的一个实例。参与者之间仅通过消息传递进行通信。(即推)。Actor 在初始化时使用中央地图注册自己,这允许其他 Actor 找到它们,并允许中央功能通过它们运行。

现在,我明白我错过了,或者更确切地说,在这里掩盖了一个重要问题,即:缺乏让步意味着单个 Actor 可能会不公平地消耗过多的时间。但是跨平台协程是在 C++ 中使这变得困难的主要因素吗?(例如,Windows 有光纤。)

不过,我还有什么遗漏的吗,或者模型真的这么明显吗?