import{d as e,r as n,o,k as s,a as l,g as a,f as c,e as i,w as t,l as d,i as r,b as u,t as f,_ as k}from"./index-CdSAAqTC.js";import{i as p}from"./index-B8zeLGbR.js";import{i as v}from"./ipcRenderer-CjF5QmVd.js";const w={id:"app-os-subwindow-ipc"},m={class:"one-block-2"},_={class:"one-block-2"},g={class:"one-block-2"},b={class:"one-block-2"},M=k(e({__name:"Ipc",setup(e){const k=n(""),M=n(""),S=n(""),y=n("");function C(){v.send(p.framework.ipcSendMsg,{type:"start",content:"开始"})}function I(){v.send(p.framework.ipcSendMsg,{type:"end",content:""})}function x(){v.invoke(p.framework.ipcInvokeMsg,"异步-回调").then((e=>{console.log("r:",e),M.value=e}))}async function j(){const e=await v.invoke(p.framework.ipcInvokeMsg,"异步");console.log("msg:",e),S.value=e}function T(){const e=v.sendSync(p.framework.ipcSendSyncMsg,"同步");y.value=e}return o((()=>{v.on(p.framework.ipcSendMsg,((e,n)=>{console.log("[ipcRenderer] [socketMsgStart] result:",n),k.value=n,e.sender.send(p.framework.hello,"electron-egg")})),v.removeAllListeners(p.os.window1ToWindow2),v.on(p.os.window1ToWindow2,((e,n)=>{s.info(n)}))})),(e,n)=>{const o=l("a-button"),s=l("a-space");return u(),a("div",w,[n[8]||(n[8]=c("div",{class:"one-block-1"},[c("span",null," 1. 发送异步消息 ")],-1)),c("div",m,[i(s,null,{default:t((()=>[i(o,{onClick:x},{default:t((()=>n[1]||(n[1]=[r("发送 - 回调")]))),_:1}),r(" 结果:"+f(M.value),1)])),_:1}),n[3]||(n[3]=c("p",null,null,-1)),i(s,null,{default:t((()=>[i(o,{onClick:j},{default:t((()=>n[2]||(n[2]=[r("发送 - async/await")]))),_:1}),r(" 结果:"+f(S.value),1)])),_:1})]),n[9]||(n[9]=c("div",{class:"one-block-1"},[c("span",null,[d(" 尽量不要使用,任何错误都容易引起卡死 "),r(" 2. 同步消息(不推荐,阻塞执行) ")])],-1)),c("div",_,[i(s,null,{default:t((()=>[i(o,{onClick:T},{default:t((()=>n[4]||(n[4]=[r("同步消息")]))),_:1}),r(" 结果:"+f(y.value),1)])),_:1})]),n[10]||(n[10]=c("div",{class:"one-block-1"},[c("span",null," 3. 长消息: 服务端持续向前端页面发消息 ")],-1)),c("div",g,[i(s,null,{default:t((()=>[i(o,{onClick:C},{default:t((()=>n[5]||(n[5]=[r("开始")]))),_:1}),i(o,{onClick:I},{default:t((()=>n[6]||(n[6]=[r("结束")]))),_:1}),r(" 结果:"+f(k.value),1)])),_:1})]),n[11]||(n[11]=c("div",{class:"one-block-1"},[c("span",null," 4. 多窗口通信:窗口之间互相通信 ")],-1)),c("div",b,[i(s,null,{default:t((()=>[i(o,{onClick:n[0]||(n[0]=e=>{v.invoke(p.os.window1ToWindow2,{receiver:"main",content:"窗口2给主窗口发送消息"})})},{default:t((()=>n[7]||(n[7]=[r("向主窗口发消息")]))),_:1})])),_:1})])])}}}),[["__scopeId","data-v-41150026"],["__file","/Users/gsx/www/gofile/src/ee/ee-demo-ts/frontend/src/views/os/subwindow/Ipc.vue"]]);export{M as default};