[英].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.