• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import { ArkTSUtils, MessageEvents, ThreadWorkerGlobalScope, worker } from '@kit.ArkTS';
2
3const workerPort: ThreadWorkerGlobalScope = worker.workerPort;
4// send new object to worker owner
5workerPort.onmessage = (e: MessageEvents) => {
6  let promptStr = e.data as string;
7  if (promptStr === 'start') {
8    let cache = new ArkTSUtils.SendableLruCache<number, number>();
9    cache.put(1, 2)
10    cache.put(2, 10)
11    // send object to worker owner
12    workerPort.postMessageWithSharedSendable(cache)
13  } else {
14    // need to wait owner finish cache operation
15    workerPort.close()
16  }
17}