- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
具有 3 个全部从多处理队列中提取的守护线程的应用程序和 4 个独立应用程序之间的线程操作功能是否存在差异:多处理队列/管道和 3 个守护线程应用程序从队列/管道应用程序读取?
两个应用程序都没有使用阻塞/同步。在一天结束时,操作系统将决定何时允许线程运行以及运行多长时间。这里的功能是否有任何其他差异,或者它们本质上是相同的?
Generic Application (no synchronisation or blocking):
- 'Stock Market Feed' Queue: StockTrade messages (dictonaries)
- 'TradingStrategy' 1 Daemon Thread: Pull from queue, inspect messages and perform trades
- 'TradingStrategy' 1 Daemon Thread: Pull from queue, inspect messages and perform trades
- 'TradingStrategy' 1 Daemon Thread: Pull from queue, inspect messages and perform trades
替代架构:
Feed Application (no multi-threading):
- 'Stock Market Feed' Queue or Pipe: StockTrade messages (dictonaries). Can a Queue be accessed from another outside process? I know a named pipe can but can a queue?
交易应用程序(无多线程):
- 'TradingStrategy': Interacts with feed (pipe?/queue), inspect messages and perform trades
交易应用程序(无多线程):
- 'TradingStrategy': Interacts with feed (pipe?/queue), inspect messages and perform trades
交易应用程序(无多线程):
- 'TradingStrategy': Interacts with feed (pipe?/queue), inspect messages and perform trades
最佳答案
是的,这两个选项完全不同。但试图解释其中的差异很快就会变得复杂。您应该研究并阅读线程和进程之间的区别。先把它牢记在心。
现在,给定您的特定场景,假设“多处理队列”实际上是指进程的一个线程中的 python 队列实例,因为队列与所有工作线程位于同一进程内,工作人员将能够访问和共享同一个队列实例。
然而,当工作人员都是独立的进程时,他们无法通过共享内存访问队列,并且需要某种形式的进程间通信才能访问该队列。
在实践中,我会想像 redis 这样的事情或 zeromq成为你的队列,然后构建一个 python 程序来与之对话,然后根据需要扩展尽可能少或尽可能多的副本。
关于python - 具有 'internal'/'external' 守护线程的应用程序之间的功能差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166633/
一 点睛 线程可以设置为守护线程,ThreadGroup 也可以设置为守护 ThreadGroup,但是若将一个 ThreadGroup 设置为 deamon,也并不会影响线程的 daemon 属性,
我有一个 python 脚本需要在启动时作为守护进程运行。进程从 tty(和 pdb)分离,但代码不运行。 我已经将它缩小到一个最小的例子 import daemon from time import
reactjs isMounted API 的文档提到: You can use this method to guard asynchronous calls to setState() or fo
我正在开发一个需要嵌入 HTTP 服务器的守护进程。我正在尝试使用 BaseHTTPServer 来完成它,当我在前台运行它时,它工作正常,但是当我尝试将守护进程 fork 到后台时,它停止工作。我的
我正在尝试使用 Apache Commons Daemon 使用 Daemon 接口(interface)来守护我的应用程序。 Java 应用程序本身不执行任何操作,只是写入 stout。 我编译了j
我正在使用 Bootle Python Web Framework 在 Ubuntu 上开发网络应用程序。是否有任何有效的方法来守护启动默认 bottlepy 网络服务器的脚本? 谢谢。 UPD:现在
我一直使用 bluepill成功地守护简单的 Ruby 脚本。然而这一次,我有一个脚本,它也在加载 Rails 环境,因此我可以访问 Rails 应用程序及其各自模型的数据库连接。我使用的 bluep
我试图守护一些代码,但我遇到了一些麻烦。 如果我用 tklogger() 调用代码,它运行得很好。但是,如果我在守护程序上下文中调用它,我会得到以下跟踪信息: Traceback (most rece
我打算使用 systemd 将 celery 4.3.0 作为守护进程运行,但它给了我这个错误: 它会启动 worker 但会很快停止它们。但是,我可以通过键入以下命令手动运行工作人员: celery
我是一名优秀的程序员,十分优秀!