Sendable 序列化?

如题:Sendable 序列化?

问题描述:

@Sendable
export class Demo {
  count:number = 0;
  static demo:Demo = null;
  static asyncLock: AsyncLock = new AsyncLock();
  static async getInstace() {
    return await Demo.asyncLock.lockAsync(()=>{
      if (demo == null) {
        demo = new Demo()
      }
      return demo;
    })
  }

  async setCount(count: number) {
    // 这里不用asyncLock.async的话,是不是就不会出现线程竞争?
    // 我们的一个场景:网络库的全局拦截器中,不会访问类成员变量,也不希望产生线程竞争
    await Demo.asyncLock.async(()=> {
      this.count = count;
    })
  }
}
阅读 285
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进