1/* 2 * Copyright (C) 2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import worker from '@ohos.worker'; 17 18const workerPort = worker.workerPort; 19 20workerPort.onmessage = function(e) { 21 console.info('parentworker recv main thread message is: ' + e.data); 22 23 let childworker = new worker.ThreadWorker('entry_test/ets/workers/childworker.ets'); 24 25 childworker.onmessage = function(e) { 26 console.info('parentworker recv childworker message is: ' + e.data); 27 }; 28 29 childworker.onexit = () => { 30 console.info('childworker exit'); 31 workerPort.postMessage('parentworker send message to main thread'); 32 }; 33 34 childworker.onerror = function(e) { 35 console.info('childworker error is: ' + err); 36 }; 37 38 childworker.postMessage('parentworker send message to childworker'); 39 40 workerPort.close(); 41};