执行相关异步任务时的流程应该是怎样的?

问题描述

假设我有一个方法 updateRecord(),该方法在其中执行一些异步请求,其中一些请求比其他请求更重要,因为它们会影响硬件,而有些请求虽然是必要的,但只影响数据库中的记录。所有这些信息结合起来代表了该商业模式的一项行动。

关于数据的可靠性,此请求的顺序应该是什么?我应该先做所有不重要的事情(那可能不会失败)然后是硬件(可能无法更新,因为它需要互联网连接,但这里保存的值是一天结束时唯一重要的值)?如果重要的失败了,我应该删除之前创建的记录吗?

反过来?

或者其他方式?

一些伪代码来代表我的困境:

async updateRecord(){
  a = await setLogOfCurrentData()
  if (a) { do something }
  b = await updateARecordInDB()
  if (a) { do something }
  c = await updateImportantInfoInHardware()
  if (!c) { 
    ??? 
  }
}

谢谢!

Ps:不知道如何正确标记这个问题,如果您有一些想法,请告诉我!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)