问题描述
我有一个 C#
应用程序,它使用 PythonNet
与 Python 脚本交互。 Python 脚本有 2 个功能。一个是生成证书的设置功能。另一个是解密函数,它解密传递给它的函数。
看起来像这样:
def setup(arn,cache,maxAgeSec):
...
Code to generate cert
...
def decryptor(encryptedMessage):
...
code to decrypt message
...
return output
我的应用程序以下列方式使用它:
_lock.Wait();
var pyLock = PythonEngine.AcquireLock();
try
{
if (_expirytime < DateTime.Now)
{
_expirytime = PopulateCredentialsAsync().GetAwaiter().GetResult();
_py.setup(_config.Arn,_config.Cache,_config.MaxAgeSec);
}
return _py.decryptor(message);
}
finally
{
PythonEngine.ReleaseLock(pyLock);
_lock.Release();
}
我想编辑我的 Python 文件以允许多处理。因为我使用的是 Windows,所以我知道我必须使用 if __name__ == "__main__"
。在从我的应用程序单独调用这两个函数的情况下,是否可以使用多处理?如果可以,如何完成?
一个想法是通过 expirytime
、_config.Arn
、_config.Cache
、_config.MaxAgeSec
和 message
。对于执行时间检查的已编辑 Python 脚本,如果需要,调用 setup
,然后以多处理方式调用 decryptor
。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)