繁体   English   中英

.net 核心 web api Z594C103F2C6E04C3D8AB059F031E0C1 生命周期

[英].net core web api controller life cycle

您好,我了解注入服务的生命周期,例如请求完成后服务不可用的范围。 但是参数(如示例中的 myObject)何时被销毁? 如果我将此参数传递给长异步任务并且我不等待结果,我可能会在任务中遇到 null 的问题?

public class mycontroller : ControllerBase
{
    private MyService _myservice;

    public mycontroller(MyService myservice)
    {
        _myservice = myservice;
    }

    [HttpPost]
    public IActionResult Post([FromBody] MyObject myObject)
    {
        _myservice.dosomethinglongasync(myObject);
        return OK();
    }
}

该任务将继续持有对myObject的引用,直到完成。 你不应该面临它被预先销毁的问题。

但是(。)这是一个糟糕的设计,您无法检查任务是否完成。 等等。触发异步任务而不在某处等待它们不是一个好习惯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM