问题标签 [channel]
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.
c# - WCF - 如何获得一些频道标识符?
我需要在我的 WCF 服务中识别一个通道。
一种方法是使用 Session.SessionID,但我似乎无法让绑定与会话一起使用,而且会话对于我想要实现的目标来说似乎太多了。我只是想写下一个频道的历史——正在调用哪些方法,并保留当前处于活动状态的“频道 ID”的哈希值。
我怎样才能得到像“频道 ID”这样的东西?我知道“频道 ID”不明确存在,但有什么解决方法?
haskell - 如何使用 Haskell 模拟 Go 的频道?
我最近开始阅读 Go 编程语言,发现通道变量是一个非常吸引人的概念。是否可以在 Haskell 中模拟相同的概念?也许有一个数据类型Channel a
和一个单子结构来启用可变状态和像关键字一样工作的函数go
。
我在并发编程方面不是很好,像 Haskell 中这样的简单通道传递机制真的会让我的生活更轻松。
编辑
人们要求我澄清我有兴趣将哪种 Go 模式转换为 Haskell。所以 Go 有一流的通道变量,可以通过函数传递和返回。我可以读取和写入这些通道,因此可以在可以同时运行的例程之间轻松通信。Go 还有一个go
关键字,根据语言规范,它作为一个独立的线程同时启动一个函数的执行,并继续执行代码而无需等待。
我感兴趣的确切模式是这样的(Go 的语法很奇怪 - 变量由 varName varType 声明,而不是通常的反转方式 - 但我认为它是可读的):
我的主要兴趣是进行蒙特卡罗模拟,其中我通过尝试修改系统的当前状态并在满足某些标准时接受修改来顺序生成配置。
使用这些通道的东西,我可以编写一个非常简单、可读且小型的蒙特卡罗模拟,该模拟将在我的多核处理器中并行运行,这让我印象深刻。
问题是 Go 有一些限制(特别是,它缺乏我在 Haskell 中习惯的方式的多态性),除此之外,我真的很喜欢 Haskell,不想把它换掉。所以问题是是否有某种方法可以使用一些类似于上面代码的机制来轻松地在 Haskell 中进行并发模拟。
编辑(2,上下文): 我没有学过计算机科学,特别是在并发方面。我只是一个创建简单程序来解决我日常研究程序中的简单问题的人,该学科与 CS 完全无关。我只是觉得 Haskell 的工作方式很有趣,并且喜欢用它来做我的小家务。
我从未听说过单独的 pi-calculus 或 CSP 通道。抱歉,如果这个问题看起来不恰当,这可能是我对此事的巨大无知的错。
你是对的,我应该更具体地说明我想在 Haskell 中复制的 Go 模式,我会尝试将问题编辑得更具体。但不要指望深刻的理论问题。问题是,从我阅读和编码的一些东西来看,Go 似乎有一种巧妙的方式来实现并发(在我的情况下,这只是意味着我的工作让我的所有核心都在数值计算中嗡嗡作响),并且如果我可以在 Haskell 中使用类似的语法,我会很高兴。
python - 无法使 GAE Channel API 在本地计算机上工作
我正在创建一个小型应用程序来测试 GAE Channel API 的工作原理。我想我已经按照文档中的描述做了所有事情,但是当我启动它时,它在 FireFox 错误日志中显示了一个关于开头语法的错误,然后是另一个重复的错误,即没有找到一个元素。这是第一个错误信息:
这是我的 javascript 代码尝试重复连接并引发第二个错误的 url:
我通过带有 jQuery 的 JSON 请求获取令牌$.get
。然后我运行这段代码来获取令牌并打开通道。错误在我运行时开始显示socket = channel.open(handler)
:
这是打开通道的 Python 中的服务器端代码:
我的错误是什么,我该怎么办?谢谢!
javascript - Google App Engine Channel API (Python/Django) 的问题
大家好。我正在尝试使用 App Engine Channel API(在此处记录)为我的应用程序启用推送更新。但是,我在设置初始化通信通道的机制时遇到了一些问题。
问题是,当我加载有问题的页面时,我得到了 onError 和 onClose 处理程序的调试打印,但我没有得到 onOpen 处理程序的调试打印。没有其他事情发生。下面是使用 Google Chrome 开发者工具的 javascript 控制台输出:
资源解释为脚本,但使用 MIME 类型 text/html 传输。..... jsapi:-1
onError ..... 443088:88
关闭 ..... 443088:80
这是我的 Django 模板中(主要是)javascript 代码的相关部分:
如果我理解正确,那么服务器端代码此时不相关,因为 onOpen 似乎还没有被调用。我知道我一定遗漏了一些简单的东西,但如果有人能帮忙解决这个问题,我将不胜感激!
java - 应对流 - nio 的渠道与 io
当您想将一个流复制到另一个流时,NIO 的通道是否比 IO 的输入流/输出流更快?如果不是,你什么时候会使用渠道?
twitter - 使用 Google 的 Channel API 和 Twitters Streaming API
我正在尝试将 Google 的 App Engine 与 Twitter 的流 API(使用 twitter4j)一起使用来制作一个应用程序,我可以在其中输入一个单词,它会在页面上“实时”显示带有该单词的推文。
我已经有很多 Java 代码来处理推文,我正在尝试将我的代码放在 App Engine 上。我猜最好的方法是使用 Google 的 ChannelAPI。那正确吗?
我知道 twitter4j 创建了一个线程来处理通过的推文,而 GAE 不支持这样的线程。
是否可以让服务器在可用时将推文推送到客户端,就像 Comet 一样?
我一直在寻找年龄试图找到一些相关的指南,但还没有找到。因此,如果有人知道,那就太好了。
php - PEAR 和 pirum 和 package.xml
不太熟悉 PEAR 的任何内部工作原理。但是我已经将 pirum 安装到主机上的一个文件夹中,以便在 Magento Connect 之外分发 Magento 扩展。
基本上频道已经设置好了,我可以通过频道发现看到它。
当我尝试添加我的包时,可以说是Package-1.0.0.tgz。我得到
The PEAR package does not have a package.xml file. (InvalidArgumentException, 0)
tar 中有一个 package.xml ...我将相同的 package.xml 放在与我试图添加的Package-1.0.0.tgz相同的目录中。但它只是出错了。我真的对自己做错了什么感到茫然,但我想这是我对包装梨扩展的知识缺乏。任何帮助,将不胜感激。
api - 使用 AppEngine Channel API 在多个窗口/选项卡上同步聊天
我正在 Google AppEngine Channel API 之上开发一个聊天应用程序,一个挑战是在多个窗口/选项卡(在单个浏览器中)中运行时协调/同步聊天。
特别是,如果用户在一个窗口/选项卡中打开了一个对话,然后打开一个连接到我的网站的新窗口/选项卡,我希望相同的对话出现在新窗口/选项卡中(这是功能Facebook 聊天和其他网站都有)。我相信这可以通过为用户打开的每个窗口打开一个新频道并让服务器确保每个频道都有最新的对话数据来实现,但我担心达到限制(如果有一个)关于 Channel API 允许的通道数量 - 我也担心这种方法的效率。
所以,我的问题是:1)从效率/有效性的角度来看,为单个用户的每个窗口/选项卡打开一个新频道是否有意义?2)我可以向单个用户开放的频道数量是否有任何限制?3)我可以打开的频道数量是否有总体限制?4) 是否有其他更智能的方式来实现我的目标(可能使用 cookie 或以某种方式在多个窗口/选项卡之间拆分来自单个通道的数据)?
谢谢你和亲切的问候亚历克斯
iphone - iPhone - UIImage 掩码和 CopyImageAndAddAlphaChannel 函数
我正在尝试创建一个拼图游戏,我需要掩盖 UIImages 以获得拼图。
我不明白如何屏蔽 JPG 图片,因为据我了解它没有 Alpha 通道。谁能帮我这个?JPG 位于在线服务器上,无法将它们下载为 PNG。
还有一件事,我在 Apple 文档的任何地方都找不到这个函数:“CopyImageAndAddAlphaChannel”。它甚至存在吗。我在一些论坛上找到了一些参考资料,但没有任何进展。
非常感谢,安德烈
.net - One 方法中抛出的异常是否会导致通道出现故障?
如果我IsOneWay=true
在一个方法中设置,其中抛出的异常会影响通道还是客户端?