问题标签 [worker]

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

c# - C# - 从工作线程而不是主线程访问时,类字段为空

不知道我做错了什么:

0 投票
3 回答
4389 浏览

c# - 如何从工作线程/类更新 GUI 线程/类?

这里的第一个问题,大家好。

我正在处理的需求是一个小型测试应用程序,它通过串行端口与外部设备通信。通信可能需要很长时间,并且设备可能会返回各种错误。

该设备在其自己的类中很好地抽象出来,GUI 线程开始在自己的线程中运行,并具有通常的打开/关闭/读取数据/写入数据基本功能。GUI 也非常简单 - 选择 COM 端口、打开、关闭、显示从设备读取的数据或错误、允许修改和回写等。

问题只是如何从设备类更新 GUI?设备处理几种不同类型的数据,因此我需要在 GUI 表单/线程类和工作设备类/线程之间建立一个相对通用的桥梁。在 GUI 到设备的方向上,一切正常,在各种 GUI 生成的事件上使用 [Begin]Invoke 调用打开/关闭/读/写等。

我已经阅读了这里的线程(如何从 C# 中的另一个线程更新 GUI?),其中假设 GUI 和工作线程在同一个类中。谷歌搜索抛出了如何创建委托或如何创建经典后台工作人员,但这根本不是我需要的,尽管它们可能是解决方案的一部分。那么,有没有可以使用的简单但通用的结构呢?

我的 C# 水平适中,我的整个工作生涯都在编程,如果有线索我会弄清楚(并回帖)......提前感谢您的帮助。

0 投票
2 回答
874 浏览

configuration - Weblogic / EjbGen:工作者管理器配置

我想声明一个工作管理器在托管线程中执行一些工作。

Weblogic 文档告诉我们可以
- 使用管理控制台声明一个全局工作者管理器
- 在 ejb-jar.xml 配置文件中声明一个本地它。

我想使用第二个选项。但是我的 ejb-jar.xml 是由 ejbgen 工具生成的。

ejbgen 中没有允许我声明工作管理器的标记。

那么我应该如何创建本地工人经理声明?

我收集了一些有趣的答案,作为我自己问题的答案发布。

0 投票
1 回答
717 浏览

c# - WPF 工作线程需要通过消费者通知暂停

嗨,我有一个生产者 - 消费者模式。WPF UI 是一个长期运行的工作线程的辅助工具,它正在侦听数据包和排队任务。在实践中,所有消息都出队,然后是 UI 消费者进程。

我遇到的问题是我有一个负责所有 WPF GUI 组件的 UIcontroller 类。它会打开一个新窗口,显示每个出队的任务,并保存一个线程安全的引用窗口集合。

我通过 Despatcher.BeginInvoke 发出信号。那里没有惊喜。

我遇到的问题是,如果 UIController 类成功打开 cconfigured 数量的窗口,我想暂停/从字面上停止我的工作线程。打开的窗口数量有限制。一旦打开的窗口数量减少到界限内,我就会恢复队列的处理。我尝试在此类中保存我的窗口集合,并通过调用将其传递给 UI,在该调用中它通过引用进行更新,但 Begin Invoke 是异步的,并且计数不会在工作线程的循环中及时更新。

我可以测试在 UIcontroller 类中打开的窗口的数量,忽略甚至从那里重新排队任务 - 基本上不采取任何行动。但我想要一个更清洁的解决方案。

我可以做一些干净的回调吗?

0 投票
1 回答
111 浏览

c# - Visual Studio 2002:通过 TCP/IP 发送文件时 C# 冻结

我有一段代码通过 tcp/ip 通道发送文件内容。有时此连接挂起会导致整个应用程序冻结。有没有办法让我的主线程产生一个工作线程并监视该工作线程。如果工作线程成功,那就太好了。如果它挂起,主线程可以记录错误消息并继续。如何在我的测试代码中模拟工作线程挂起。请让我知道代码是什么样的。我正在使用 C# Visual Studio 2002。

0 投票
1 回答
701 浏览

rest - 将微型 REST 端点添加到 Azure 辅助角色的最简单代码片段

我希望能够向 Azure Worker Role添加一个微小的 REST 端点,只是转储一些非关键的监控元数据。我可以想到许多复杂的方法来做到这一点,但我觉得有更简单的解决方案。解决这个问题的代码片段是什么?

0 投票
2 回答
363 浏览

iis - IIS 共享主机中的工作进程

谁能告诉我,有没有办法在 IIS 共享托管服务中运行进程。

假设,场景就像“我想在任何地方 3 小时后将电子邮件发送到电子邮件 ID 列表”,所以这里的挑战是这个过程不应该被 HTTP 链接调用。它应该是自动的。

我认为我们可以通过 IIS 工作进程来做到这一点。

此外,这一切都将发生在 IIS7、.NET 3.5 中的共享服务器(如 GoDaddy)上

请任何人给我一个方向。

提前致谢。

0 投票
1 回答
48 浏览

background - 将服务器添加到服务

我正在构建一个架构,其中 Web 服务器以随机方式将作业分派到后台工作节点,以便平衡负载。

我的 Web 服务器怎么知道我添加了一个工作节点?

谢谢!

0 投票
1 回答
792 浏览

.net - .Net 后台工作人员未取消

我在用户控制级别使用后台工作人员,它工作正常。但后来我将工作人员推入了帮助程序功能之一。我的问题是它工作正常,直到我尝试取消任务。在 DoWork 函数中,每次都有一个循环调用 Web 服务,在调用该服务之前,它会检查取消挂起,如果是,那么它应该打破循环。

0 投票
1 回答
827 浏览

javascript - 共享网络工作者 (HTML5) 中的 applicationCache 是“未定义的”

我正在尝试访问共享网络工作者(HTML5) 的离线应用程序缓存,但没有成功。几个小时以来,我一直在努力解决这个问题,所以我一定遗漏了一些东西......来自 JavaScript Ninja 的任何帮助将不胜感激!

W3C 规范说:

(在共享工作者中)应该返回适​​用于当前共享工作者的 ApplicationCache 对象。

我正在通过以下方式从我的应用程序的主脚本中生成一个共享工作者:

这是我的共享工作者(test.js)的代码:

}

我收到的警报是:

  1. test.html 的内容(如我所料)
  2. 消息“缓存:未定义”(哎呀!)

我在 Google Chrome 7.0.517.44 和 Safari 5.0.2 (Mac OS X 10.6.4) 上试过这个。我还尝试在访问缓存和许多其他变体之前触发 HTTP GET,但所有这些尝试都产生了相同的结果。

我错过了一些明显的东西吗?这是我测试过的浏览器的已知限制吗?

非常感谢,

奥里