首页 > 解决方案 > PythonNet:嵌入c#时如何从python函数通知c#调用者

问题描述

我现在在 c# 中嵌入 pythonnet。当我调用一个耗时的python函数时,我希望python函数将进程通知给c#调用者,我该怎么做?

环境:Python 3.6,C#

例子:

C# 代码

public class TestCallback
{
    public void CheckingProcess(int step)
    {
        //do some notify
    }

    public void CallPython()
    {
       using (Py.GIL())
       {
            long_time_worker(CheckingProcess);
       }
    }
}

Python代码

def long_time_worker(callback):
    'callback: c# function'

    for i in range(1000):
        #do some work.......
        callable(i)  #notify current step to caller

标签: c#pythonpython.net

解决方案


推荐阅读