gpt4 book ai didi

c# - 异步实例化类

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:16 31 4
gpt4 key购买 nike

所以我有一些 C# 代码实例化一个类,该类通过 COM 对象导出。该特定实例化调用是阻塞调用(需要从外部源下载数据)。因此,使我的 C# 阻塞。

是否可以异步实例化一个对象?

最佳答案

视情况而定。

通常,您可以启动一个Task 来在后台线程上实例化对象。使用 C# 5,这可以很简单:

var yourObject = await Task.Run(() => new TheObject());

但是,由于这是一个 COM 对象,对象本身很可能具有线程亲和性。如果 COM 对象需要单线程单元线程,则需要为其保证 STA 线程。如果它具有线程亲和性,那么您可能需要在 UI 线程上执行此操作。

关于c# - 异步实例化类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18623535/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com