1/* 2 * Copyright (c) 2025 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 16// [Start execute_task] 17import { taskpool } from '@kit.ArkTS'; 18import { IconItemSource } from './IconItemSource'; 19import { loadPicture } from './IndependentTask'; 20 21@Entry 22@Component 23struct Index { 24 @State message: string = 'Hello World'; 25 26 build() { 27 Row() { 28 Column() { 29 Text(this.message) 30 .fontSize(50) 31 .fontWeight(FontWeight.Bold) 32 .onClick(() => { 33 let iconItemSourceList: IconItemSource[] = []; 34 // 创建Task 35 let lodePictureTask: taskpool.Task = new taskpool.Task(loadPicture, 30); 36 // 执行Task,并返回结果 37 taskpool.execute(lodePictureTask).then((res: object) => { 38 // loadPicture方法的执行结果 39 iconItemSourceList = res as IconItemSource[]; 40 }) 41 this.message = 'success'; 42 }) 43 } 44 .width('100%') 45 } 46 .height('100%') 47 } 48} 49// [End execute_task] 50