栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

构造函数可以异步吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

构造函数可以异步吗?

构造函数的行为与返回构造类型的方法非常相似。而且

async
method不能返回任何类型,它必须是“ fire and忘记”
void
Task

我认为,如果类型的构造函数

T
实际返回了
Task<T>
,那将非常令人困惑。

如果异步构造函数的行为与方法相同,则将

asyncvoid
破坏构造函数的含义。构造函数返回后,您应该获得一个完全初始化的对象。不是将来会在某个不确定的位置正确初始化的对象。也就是说,如果您很幸运并且异步初始化不会失败。

所有这些只是一个猜测。但是在我看来,异步构造函数的可能性带来的麻烦多于其价值。

如果您确实想要方法的“即弃即用”语义

async void
(如果可能,应避免使用),则可以轻松地将所有代码封装在
asyncvoid
方法中,并从构造函数中调用它,如您在问题中提到的那样。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/568652.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号