1# 使用Emitter进行线程间通信 2 3 4[Emitter](../reference/apis/js-apis-emitter.md)主要提供线程间发送和处理事件的能力,包括对持续订阅事件或单次订阅事件的处理、取消订阅事件、发送事件到事件队列等。 5 6 7Emitter的开发步骤如下: 8 9 101. 订阅事件 11 12 ```ts 13 import emitter from "@ohos.events.emitter"; 14 15 // 定义一个eventId为1的事件 16 let event: emitter.InnerEvent = { 17 eventId: 1 18 }; 19 20 // 收到eventId为1的事件后执行该回调 21 let callback = (eventData: emitter.EventData) => { 22 console.info('event callback'); 23 }; 24 25 // 订阅eventId为1的事件 26 emitter.on(event, callback); 27 ``` 28 292. 发送事件 30 31 ```ts 32 import emitter from "@ohos.events.emitter"; 33 34 // 定义一个eventId为1的事件,事件优先级为Low 35 let event: emitter.InnerEvent = { 36 eventId: 1, 37 priority: emitter.EventPriority.LOW 38 }; 39 40 let data = new Map<string, Object>(); 41 data.set("content", "c"); 42 data.set("id", 1); 43 data.set("isEmpty", false); 44 let eventData: emitter.EventData = {data}; 45 46 // 发送eventId为1的事件,事件内容为eventData 47 emitter.emit(event, eventData); 48 ``` 49