在阻塞的垫上执行从另一个线程的链接和取消链接是否安全?

时间:2018-08-20 22:59:32

标签: python gstreamer python-asyncio

我正在使用一个高度动态的gstreamer管道,并且我的代码中填充了填充探测回调。 这使它非常不愉快。 我正在使用asyncio,因此我想更改这种类型的代码:

callback(probe):
    manipulate_pipeline()
    # Now the pipeline has been manipulated...
    return REMOVE_PROBE
pad.add_probe(callback)

成为这种风格

probe = await pad.add_probe_async()
manipulate_pipeline()
# Now the pipeline has been manipulated...
pad.remove_probe(pad)

这样做安全吗?还是我从探查回调中返回而没有删除探查,并继续从asyncio线程中操作被阻塞的垫子,从而引起麻烦?

0 个答案:

没有答案