Python:等待c#dll方法完成执行

Python:等待c#dll方法完成执行,c#,python,dll,C#,Python,Dll,我编写了一个c代码,它计算一个数字的指数并返回值。我已经用它创建了一个DLL namespace sampleNamespace { public class ExpClass { public float exp(float a) { //Calculate exponential return exponentialValue; } } } 我正在用Python加载c

我编写了一个c代码,它计算一个数字的指数并返回值。我已经用它创建了一个DLL

namespace sampleNamespace
{
    public class ExpClass
    {
        public float exp(float a)
        {
             //Calculate exponential
             return exponentialValue;
        }
    }
}
我正在用Python加载c#DLL,并从Python中调用
add(inta,intb)

import dotnet.seamless
dotnet.add_assemblies(".")
dotnet.load_assembly("ExpDLL")

#Import namespace from c#
import sampleNamespace

expClass = sampleNamespace.ExpClass()

exp = 0
exp= expClass.exp(7.9865)
print("Computation completed:", exp)
运行上述python时,打印语句将在不等待DLL方法完成的情况下打印出来。我得到下面的输出

Computation completed: 0

如何使Python的主线程等待
expClass.exp()
完成,然后继续

你的C代码无法编译,你在
void
方法中返回值。对不起,我在stackoverflow中输入错误。我在实际代码中返回一个浮点值。显然,您提供的代码没有编译,因此不可能判断出哪里出了问题——但有一点是肯定的,Python代码不会“不等待”方法完成。您如何验证该方法实际上没有返回0?你有没有用参数
7.9865
从C#code调用过它?@jeroenmoster是的,用C#验证过。很遗憾,我不能分享代码,非常抱歉。但这是它的jist。您的C代码无法编译,您在
void
方法中返回值。抱歉,我在stackoverflow中输入错误。我在实际代码中返回一个浮点值。显然,您提供的代码没有编译,因此不可能判断出哪里出了问题——但有一点是肯定的,Python代码不会“不等待”方法完成。您如何验证该方法实际上没有返回0?你有没有用参数
7.9865
从C#code调用过它?@jeroenmoster是的,用C#验证过。很遗憾,我不能分享代码,非常抱歉。但这是最重要的。