FPGA_WebLab/server/udp.ts

41 lines
933 B
TypeScript

import { resolve } from "path";
import Tinypool from "tinypool";
import type { UDPReceiveProcotol, UDPSendProtocol } from "./udpProtocol";
type UDPDataType = {
address: string,
data: (
UDPSendProtocol.CmdPackage |
UDPSendProtocol.DataPackage |
UDPReceiveProcotol.ReadPackage |
UDPReceiveProcotol.WritePackage
),
port: number,
date?: string,
}
const udpClientsPool = new Tinypool({
filename: resolve(__dirname, "./udpClient.ts"),
workerData: {}
})
const udpServer = new Tinypool({
filename: resolve(__dirname, "./udpServer.ts"),
workerData: {},
maxThreads: 1,
minThreads: 1,
})
async function udpServerPort(): Promise<number> {
return udpServer.run(null, { name: "port" })
}
async function uploadBitStream(): Promise<boolean> {
let ret = await udpClientsPool.run({} as UDPDataType, { name: "send" })
return ret
}
export { udpServerPort, uploadBitStream }
export type { UDPDataType }