python - 如何在Python中暂停一个进程并向另一个进程发送信号

标签 python multiprocessing

Python 新手,所以这听起来像是一个基本问题。我有一个新进程从主进程中产生,以与主进程并行执行某些操作。 由于某些重要的 API 线程问题,我无法在这种特定情况下使用线程。我正在尝试在两个进程之间实现一些同步。我读到signals但我找不到与我的情况相符的正确示例。一些示例代码:

import multiprocessing
import signal
def process_one(self):
    # Do something
    second_process = Process(target=self.process_two)
    second_process.start()
    # Do something and send signal to process_two to unpause
    # Do other things
    second_process.join()

def process_two(self):
    # Do something
    # Now I want to pause this process till I receive a signal from
    # process_one
    signal.pause()
    # continue to do other things

正如我在评论中提到的,我正在尝试找到一种方法来实现这一目标。我看到的大多数示例都是针对 fork 的。指针?

最佳答案

使用 Event() 解决了这个问题

那里发布的示例正是我想要的。

关于python - 如何在Python中暂停一个进程并向另一个进程发送信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35005037/

相关文章:

python - 运行函数后,函数变成了一个ndarray

python - Theano 扫描以在数组上进行快速计算

python读取文本文件

multithreading - Lua 是一种基于事件的编程语言吗?

multithreading - 为什么我会选择基于线程/基于进程的方法与异步 Web 服务器

python - 哪个更快,a==2==b,或者a==2和b==2

Python函数只运行一次

python - Python 如何在我被 LSF 分配了 4 个核心的集群上看到 12 个 cpu?

php - PHP 中的多线程/多任务处理

python - 最佳数量的进程可同时写入大量文件